ERP Nedir? | Türkiye'nin ERP Forum Platformu Ana Sayfa
Forum Anasayfa Forum Anasayfa > SQL > SQL Veri Tabanı İşlemleri
  Aktif Konular Aktif Konular RSS - OZEL HESAP KAPATILMAMISLAR
  SSS SSS  Forumu Ara   Etkinlikler   Kayıt Ol Kayıt Ol  Giriş Giriş

ERP Nedir? Enterprise Resource Planning nasıl çalışır? İş süreçleri ile ilgili tüm soru ve cevapları ERPNe.org'da.

Ülkemizde hızla gelişmekte olan ERP yazılım sektörümüzün, Yerli ve Yabancı ERP işlemlerinin tanıtımı ve kullanıcılarının buluşma noktası olması hedefiyle kurulan sitemize hoş geldiniz.

Ülkemizdeki Ne.org konseptinde bir ilk olarak yayın hayatına başlayan ERPNe.org, Kurumsal Kaynak Planlaması yazılımlarını kullananların bilgi kaynağı/Portal olmak amacı ile kurulmuştur.

Genellikle yurt dışında büyük üreticiler tarafından geliştirilen SQL, Delphi, ASP, CSharp gibi teknolojilerin anlatıldığı sitelerin kullandıkları (WhatisSQL, WhatisASP) (Ülkemizde Netsis Nedir, Mikro Nedir, SAP Nedir yada Logo Nedir gibi kullanıcı sorularına) Ne ve nedir konseptinde yeni bir açılım olmasını da hedefleyen ERPNe.ORG' un, ülkemizin uluslararası ERP sektörü içinde hak ettiği yeri almasında ve ERP ürünlerini kullananların bir araya gelerek Yerli ERP'nin gelişmesine katkı sağlayacakları önemli bir kilometre taşı olacağı düşüncesindeyiz.


OZEL HESAP KAPATILMAMISLAR

 Yanıt Yaz Yanıt Yaz
Yazar
Mesaj
  Konu Arama Konu Arama  Topic Seçenekleri Topic Seçenekleri
social Açılır Kutu İzle
Kidemli Üye
Kidemli Üye
Simge

Kayıt Tarihi: 10 Ekim 2007
Konum: İzmir
Durum: Aktif Değil
Puanlar: 512
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı social Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Konu: OZEL HESAP KAPATILMAMISLAR
    Gönderim Zamanı: 08 Mart 2016 Saat 15:38
arkadaslar merhaba cari hareketinde alacak kaydi olupta özel hesap kismindan kapatilmamis haraketi olani nasil gorebilirim
 
ornek alinin 50tl borcu var 50 tl alacagi var ve bakiyesi 0 diyelim ama özel hesap penceresi gösterilmesin isaretli ve alacak kaydinda pencere açilmadigi için 50 tl borca karsilik kapatma yapilmamis.
 
bende istiyorumki cari haraketinde alacak kaydi olup borca kapatma yapilmamislari listelesin
 
SELECT     (CASE WHEN TBLCAHAR.ALACAK > '0' THEN TBLCAHAR.KAPATILMIS_TUTAR > '0') END) buna benzer birsey sanirim
yardimlarinizi bekliyorum tesekkurler


Düzenleyen social - 08 Mart 2016 Saat 15:39
Yukarı Dön
rhan Açılır Kutu İzle
Kidemli Üye
Kidemli Üye
Simge

Kayıt Tarihi: 05 Temmuz 2008
Durum: Aktif Değil
Puanlar: 590
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı rhan Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 08 Mart 2016 Saat 17:54
CREATE FUNCTION [dbo].[OZELYASLANDIR](@CARIKODU TDBCARIKOD,@DOVIZLIMI VARCHAR(1))
RETURNS
--DECLARE
@TEMP TABLE ( CARIKOD VARCHAR(35),CARIISIM VARCHAR(100),BELGENO VARCHAR(20),BELGETARIHI SMALLDATETIME,ACIKLAMA VARCHAR(50),TAHSILAT FLOAT,ODEME FLOAT,
VADEGUNU SMALLDATETIME,ASILTUTAR FLOAT,DOVIZTUR INT,DOVIZTUTAR FLOAT,PLASIYERKODU VARCHAR(50),PLASIYERISMI VARCHAR(100),PROJE VARCHAR(15),INCKEYNO INT)
AS                     
BEGIN       


IF @CARIKODU = ''
    BEGIN
        SET @CARIKODU = '%'
    END

DECLARE @CKOD VARCHAR(100),@DOVTIP INT,@TB FLOAT,@TA FLOAT,@DB FLOAT,@DA FLOAT,@KURISIM VARCHAR(100),@HESAPTUTMASEKLI VARCHAR(100)
DECLARE @CARI_KOD VARCHAR(100),@CARI_ISIM VARCHAR(100),@BELGE_NO VARCHAR(100),@TARIH SMALLDATETIME ,@ACIKLAMA VARCHAR(100),@VADE_TARIHI SMALLDATETIME,@PROJE_KODU VARCHAR(100),@DOVIZ_TURU INT,@SUBE_KODU INT,@HAREKET_TURU VARCHAR(100),@BORC FLOAT,@ALACAK FLOAT,@DOVIZ_TUTAR FLOAT,@KAPATILMIS_TUTAR FLOAT,@INC_KEY_NUMBER FLOAT,@FIRMA_DOVIZ_TIPI FLOAT,@FIRMA_DOVIZ_TUTARI FLOAT,@PLASIYER_KODU VARCHAR(100),@PLASIYER_ACIKLAMA VARCHAR(100)
DECLARE @CKODU VARCHAR(100),@CARIISIM VARCHAR(100),@BELGENO VARCHAR(100),@BELGETARIHI SMALLDATETIME,@TMP_ACIKLAMA VARCHAR(100),@TMP_BORC FLOAT,@TMP_ALACAK FLOAT,@VADE SMALLDATETIME,@SONALACAK FLOAT,@ASILTUTAR FLOAT,@DOVIZTUR INT,@DOVIZTUTAR FLOAT,@MODUL VARCHAR(100),@KA VARCHAR(100)
DECLARE @BAKIYE FLOAT,@TOPLAM FLOAT


IF @DOVIZLIMI='E'
    BEGIN
        DECLARE CURCARI CURSOR FOR
        SELECT TRA.CARI_KOD,TRA.DOVIZ_TURU DOVIZTIP,TRA.BORC BORC, TRA.ALACAK ALACAK,TRA.BDOVTOP, TRA.ADOVTOP,ISNULL(KUR.ISIM,'YTL') KURISIM,HESAPTUTMASEKLI
        FROM TBLCASABIT CARIANA
        LEFT OUTER JOIN(
        SELECT CARI_KOD,CAHAR.DOVIZ_TURU,SUM(BORC) BORC ,SUM(ALACAK) ALACAK,SUM(CASE WHEN BORC>0 THEN DOVIZ_TUTAR ELSE 0 END) BDOVTOP,SUM(CASE WHEN ALACAK>0 THEN DOVIZ_TUTAR ELSE 0 END) ADOVTOP
        FROM TBLCAHAR CAHAR
        WHERE (HAREKET_TURU BETWEEN 'A' AND 'L')
        AND CAHAR.DOVIZ_TURU>=0
        AND CAHAR.DOVIZ_TURU<=99
        GROUP BY CARI_KOD,DOVIZ_TURU
         ) TRA
         ON ( CARIANA.CARI_KOD = TRA.CARI_KOD )
        LEFT OUTER JOIN NETSIS..KUR KUR ON ( KUR.SIRA = TRA.DOVIZ_TURU )
        WHERE (CARIANA.CM_BORCT + CARIANA.CM_ALACT <> 0) AND TRA.CARI_KOD LIKE @CARIKODU ORDER BY  CARIANA.CARI_KOD  ASC ,TRA.DOVIZ_TURU



        OPEN CURCARI
        FETCH NEXT FROM CURCARI INTO @CKOD,@DOVTIP,@TB,@TA,@DB,@DA,@KURISIM,@HESAPTUTMASEKLI
        WHILE @@FETCH_STATUS <> -1
            BEGIN
                IF @DOVTIP<>0
                BEGIN                
                    IF @HESAPTUTMASEKLI='K'
                    BEGIN
                        DECLARE HAREKET CURSOR FOR
                        SELECT CARI_KOD,(SELECT CARI_ISIM FROM TBLCASABIT WITH (NOLOCK) WHERE TBLCASABIT.CARI_KOD = TBLCAHAR.CARI_KOD),BELGE_NO,TARIH,ACIKLAMA,VADE_TARIHI,TBLCAHAR.PROJE_KODU,DOVIZ_TURU,TBLCAHAR.SUBE_KODU,HAREKET_TURU,(CASE WHEN BORC>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE BORC END),(CASE WHEN ALACAK>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE ALACAK END),DOVIZ_TUTAR,KAPATILMIS_TUTAR,TBLCAHAR.PLASIYER_KODU,PLASIYER_ACIKLAMA,INC_KEY_NUMBER FROM TBLCAHAR WITH (NOLOCK)  
                        LEFT OUTER JOIN TBLCARIPLASIYER WITH (NOLOCK) ON (TBLCAHAR.PLASIYER_KODU = TBLCARIPLASIYER.PLASIYER_KODU)             
                        WHERE DOVIZ_TUTAR  <> KAPATILMIS_TUTAR AND (CARI_KOD=@CKOD) AND DOVIZ_TURU = @DOVTIP
                        ORDER BY VADE_TARIHI DESC
                     
                        OPEN HAREKET
                        FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@HAREKET_TURU,@BORC,@ALACAK,@DOVIZ_TUTAR,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@INC_KEY_NUMBER
                        WHILE @@FETCH_STATUS <> -1
                        BEGIN
                            SET @SONALACAK = (@BORC + @ALACAK)  
                            SET @ASILTUTAR = (@BORC + @ALACAK)  
                            IF @BORC > 0  SET @BORC = @BORC - @KAPATILMIS_TUTAR
                            IF @ALACAK > 0  SET @ALACAK = @ALACAK   - @KAPATILMIS_TUTAR
                            INSERT INTO @TEMP VALUES (@CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@BORC,@ALACAK,@VADE_TARIHI,@ASILTUTAR,@DOVIZ_TURU,@DOVIZ_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@PROJE_KODU,@INC_KEY_NUMBER)
                               FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@HAREKET_TURU,@BORC,@ALACAK,@DOVIZ_TUTAR,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@INC_KEY_NUMBER
                            END
                        CLOSE HAREKET
                      DEALLOCATE HAREKET
                    END
                    
                        IF @HESAPTUTMASEKLI = 'Y ' AND @DB < @DA
                        BEGIN
                            SET @BAKIYE = @DA-@DB    -- ALACAK
                            
                            DECLARE HAREKET CURSOR FOR SELECT CARI_KOD,(SELECT CARI_ISIM FROM TBLCASABIT WITH (NOLOCK) WHERE TBLCASABIT.CARI_KOD = TBLCAHAR.CARI_KOD), BELGE_NO,TARIH,ACIKLAMA,VADE_TARIHI,TBLCAHAR.PROJE_KODU,DOVIZ_TURU,TBLCAHAR.SUBE_KODU,(CASE WHEN BORC>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE BORC END),(CASE WHEN ALACAK>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE ALACAK END),INC_KEY_NUMBER,DOVIZ_TUTAR,FIRMA_DOVIZ_TIPI,FIRMA_DOVIZ_TUTARI,KAPATILMIS_TUTAR,TBLCAHAR.PLASIYER_KODU,PLASIYER_ACIKLAMA FROM TBLCAHAR WITH (NOLOCK)  
                                                    LEFT OUTER JOIN TBLCARIPLASIYER WITH (NOLOCK) ON (TBLCAHAR.PLASIYER_KODU = TBLCARIPLASIYER.PLASIYER_KODU)             
                                                    WHERE (CARI_KOD=@CKOD)
                                                    AND NOT ((DOVIZ_TURU>0) AND (DOVIZ_TUTAR=0))
                                                    AND (DOVIZ_TURU=@DOVTIP)
                                                    AND (CASE WHEN ALACAK>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE ALACAK END)>0
                                                    ORDER BY VADE_TARIHI DESC
                            OPEN HAREKET                                    
                            SET @TOPLAM = 0
                            FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@BORC,@ALACAK,@INC_KEY_NUMBER,@DOVIZ_TUTAR,@FIRMA_DOVIZ_TIPI,@FIRMA_DOVIZ_TUTARI,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA
                            WHILE @@FETCH_STATUS<>-1 AND ( @BAKIYE > @TOPLAM )
                            BEGIN

                                SET @TOPLAM = @TOPLAM + @ALACAK       
                                SET @SONALACAK = @ALACAK
                                SET @ASILTUTAR = @ALACAK
                                IF @TOPLAM >= @BAKIYE
                                   BEGIN
                                     SET @SONALACAK = @ALACAK
                                     SET @ALACAK = (@TOPLAM - @BAKIYE - @ALACAK) * -1
                                     IF  @SONALACAK = @ALACAK SET @SONALACAK = @ALACAK
                                   ELSE
                                      SET @SONALACAK = @ALACAK
                                   END
                                
                                INSERT INTO @TEMP VALUES (@CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@BORC,@ALACAK,@VADE_TARIHI,@ASILTUTAR,@DOVIZ_TURU,@DOVIZ_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@PROJE_KODU,@INC_KEY_NUMBER)
                                FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@BORC,@ALACAK,@INC_KEY_NUMBER,@DOVIZ_TUTAR,@FIRMA_DOVIZ_TIPI,@FIRMA_DOVIZ_TUTARI,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA
                             END
                          CLOSE HAREKET
                          DEALLOCATE HAREKET
                        END

                        IF @HESAPTUTMASEKLI = 'Y ' AND @DA < @DB
                        BEGIN
                            SET @BAKIYE = @DB-@DA    -- BORC
                            DECLARE HAREKET CURSOR FOR SELECT CARI_KOD,(SELECT CARI_ISIM FROM TBLCASABIT WITH (NOLOCK) WHERE TBLCASABIT.CARI_KOD = TBLCAHAR.CARI_KOD), BELGE_NO,TARIH,ACIKLAMA,VADE_TARIHI,TBLCAHAR.PROJE_KODU,DOVIZ_TURU,TBLCAHAR.SUBE_KODU,(CASE WHEN BORC>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE BORC END),(CASE WHEN ALACAK>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE ALACAK END),INC_KEY_NUMBER,DOVIZ_TUTAR,FIRMA_DOVIZ_TIPI,FIRMA_DOVIZ_TUTARI,KAPATILMIS_TUTAR,TBLCAHAR.PLASIYER_KODU,PLASIYER_ACIKLAMA FROM TBLCAHAR WITH (NOLOCK)  
                                                    LEFT OUTER JOIN TBLCARIPLASIYER WITH (NOLOCK) ON (TBLCAHAR.PLASIYER_KODU = TBLCARIPLASIYER.PLASIYER_KODU)             
                                                    WHERE (CARI_KOD=@CKOD)
                                                    AND NOT ((DOVIZ_TURU>0) AND (DOVIZ_TUTAR=0))
                                                    AND (DOVIZ_TURU=@DOVTIP)
                                                    AND (CASE WHEN BORC>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE BORC END)>0
                                                    ORDER BY VADE_TARIHI DESC

                            OPEN HAREKET                                    
                            SET @TOPLAM = 0
                            FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@BORC,@ALACAK,@INC_KEY_NUMBER,@DOVIZ_TUTAR,@FIRMA_DOVIZ_TIPI,@FIRMA_DOVIZ_TUTARI,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA
                            WHILE @@FETCH_STATUS<>-1 AND ( @BAKIYE > @TOPLAM )
                            BEGIN
                                
                                SET @TOPLAM = @TOPLAM + @BORC       
                                SET @SONALACAK = @BORC
                                SET @ASILTUTAR = @BORC
                                IF @TOPLAM >= @BAKIYE
                                   BEGIN
                                     SET @SONALACAK = @BORC
                                     SET @BORC = (@TOPLAM - @BAKIYE - @BORC) * -1
                                     IF  @SONALACAK = @BORC SET @SONALACAK = @BORC
                                   ELSE
                                     SET @SONALACAK = @BORC
                                   END
                                
                                INSERT INTO @TEMP VALUES (@CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@BORC,@ALACAK,@VADE_TARIHI,@ASILTUTAR,@DOVIZ_TURU,@DOVIZ_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@PROJE_KODU,@INC_KEY_NUMBER)
                                FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@BORC,@ALACAK,@INC_KEY_NUMBER,@DOVIZ_TUTAR,@FIRMA_DOVIZ_TIPI,@FIRMA_DOVIZ_TUTARI,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA                               
                             END
                          CLOSE HAREKET
                          DEALLOCATE HAREKET
                        END
                END

                    IF @DOVTIP=0
                    BEGIN

                        IF @HESAPTUTMASEKLI='K'
                        BEGIN
                            DECLARE HAREKET CURSOR FOR
                            SELECT CARI_KOD,(SELECT CARI_ISIM FROM TBLCASABIT WITH (NOLOCK) WHERE TBLCASABIT.CARI_KOD = TBLCAHAR.CARI_KOD),BELGE_NO,TARIH,ACIKLAMA,VADE_TARIHI,TBLCAHAR.PROJE_KODU,DOVIZ_TURU,TBLCAHAR.SUBE_KODU,HAREKET_TURU,(CASE WHEN BORC>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE BORC END),(CASE WHEN ALACAK>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE ALACAK END),DOVIZ_TUTAR,KAPATILMIS_TUTAR,TBLCAHAR.PLASIYER_KODU,PLASIYER_ACIKLAMA,INC_KEY_NUMBER FROM TBLCAHAR WITH (NOLOCK)  
                            LEFT OUTER JOIN TBLCARIPLASIYER WITH (NOLOCK) ON (TBLCAHAR.PLASIYER_KODU = TBLCARIPLASIYER.PLASIYER_KODU)             
                            WHERE BORC+ALACAK  <> KAPATILMIS_TUTAR AND (CARI_KOD=@CKOD) AND DOVIZ_TURU = @DOVTIP
                            ORDER BY VADE_TARIHI DESC
                         
                            OPEN HAREKET
                            FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@HAREKET_TURU,@BORC,@ALACAK,@DOVIZ_TUTAR,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@INC_KEY_NUMBER
                            WHILE @@FETCH_STATUS <> -1
                            BEGIN
                                SET @SONALACAK = (@BORC + @ALACAK)  
                                SET @ASILTUTAR = (@BORC + @ALACAK)  
                                IF @BORC > 0  SET @BORC = @BORC - @KAPATILMIS_TUTAR
                                IF @ALACAK > 0  SET @ALACAK = @ALACAK   - @KAPATILMIS_TUTAR
                                INSERT INTO @TEMP VALUES (@CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@BORC,@ALACAK,@VADE_TARIHI,@ASILTUTAR,@DOVIZ_TURU,@DOVIZ_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@PROJE_KODU,@INC_KEY_NUMBER)
                                   FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@HAREKET_TURU,@BORC,@ALACAK,@DOVIZ_TUTAR,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@INC_KEY_NUMBER
                                END
                            CLOSE HAREKET
                          DEALLOCATE HAREKET
                        END
                        
                        
                        IF @HESAPTUTMASEKLI = 'Y ' AND @TB < @TA
                        BEGIN
                            SET @BAKIYE = @TA-@TB    -- ALACAK
                            
                            DECLARE HAREKET CURSOR FOR SELECT CARI_KOD,(SELECT CARI_ISIM FROM TBLCASABIT WITH (NOLOCK) WHERE TBLCASABIT.CARI_KOD = TBLCAHAR.CARI_KOD), BELGE_NO,TARIH,ACIKLAMA,VADE_TARIHI,TBLCAHAR.PROJE_KODU,DOVIZ_TURU,TBLCAHAR.SUBE_KODU,(CASE WHEN BORC>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE BORC END),(CASE WHEN ALACAK>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE ALACAK END),INC_KEY_NUMBER,DOVIZ_TUTAR,FIRMA_DOVIZ_TIPI,FIRMA_DOVIZ_TUTARI,KAPATILMIS_TUTAR,TBLCAHAR.PLASIYER_KODU,PLASIYER_ACIKLAMA FROM TBLCAHAR WITH (NOLOCK)  
                                                    LEFT OUTER JOIN TBLCARIPLASIYER WITH (NOLOCK) ON (TBLCAHAR.PLASIYER_KODU = TBLCARIPLASIYER.PLASIYER_KODU)             
                                                    WHERE (CARI_KOD=@CKOD)
                                                    AND (DOVIZ_TURU=@DOVTIP)
                                                    AND (CASE WHEN ALACAK>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE ALACAK END)>0
                                                    ORDER BY VADE_TARIHI DESC
                            OPEN HAREKET                                    
                            SET @TOPLAM = 0
                            FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@BORC,@ALACAK,@INC_KEY_NUMBER,@DOVIZ_TUTAR,@FIRMA_DOVIZ_TIPI,@FIRMA_DOVIZ_TUTARI,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA
                            WHILE @@FETCH_STATUS<>-1 AND ( @BAKIYE > @TOPLAM )
                            BEGIN

                                SET @TOPLAM = @TOPLAM + @ALACAK       
                                SET @SONALACAK = @ALACAK
                                SET @ASILTUTAR = @ALACAK
                                IF @TOPLAM >= @BAKIYE
                                   BEGIN
                                     SET @SONALACAK = @ALACAK
                                     SET @ALACAK = (@TOPLAM - @BAKIYE - @ALACAK) * -1
                                     IF  @SONALACAK = @ALACAK SET @SONALACAK = @ALACAK
                                   ELSE
                                      SET @SONALACAK = @ALACAK
                                   END
                                
                                INSERT INTO @TEMP VALUES (@CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@BORC,@ALACAK,@VADE_TARIHI,@ASILTUTAR,@DOVIZ_TURU,@DOVIZ_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@PROJE_KODU,@INC_KEY_NUMBER)
                                FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@BORC,@ALACAK,@INC_KEY_NUMBER,@DOVIZ_TUTAR,@FIRMA_DOVIZ_TIPI,@FIRMA_DOVIZ_TUTARI,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA                               
                             END
                          CLOSE HAREKET
                          DEALLOCATE HAREKET
                        END

                        IF @HESAPTUTMASEKLI = 'Y ' AND @TA < @TB
                        BEGIN
                            SET @BAKIYE = @TB-@TA    -- BORC
                            DECLARE HAREKET CURSOR FOR SELECT CARI_KOD,(SELECT CARI_ISIM FROM TBLCASABIT WITH (NOLOCK) WHERE TBLCASABIT.CARI_KOD = TBLCAHAR.CARI_KOD), BELGE_NO,TARIH,ACIKLAMA,VADE_TARIHI,TBLCAHAR.PROJE_KODU,DOVIZ_TURU,TBLCAHAR.SUBE_KODU,(CASE WHEN BORC>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE BORC END),(CASE WHEN ALACAK>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE ALACAK END),INC_KEY_NUMBER,DOVIZ_TUTAR,FIRMA_DOVIZ_TIPI,FIRMA_DOVIZ_TUTARI,KAPATILMIS_TUTAR,TBLCAHAR.PLASIYER_KODU,PLASIYER_ACIKLAMA FROM TBLCAHAR WITH (NOLOCK)  
                                                    LEFT OUTER JOIN TBLCARIPLASIYER WITH (NOLOCK) ON (TBLCAHAR.PLASIYER_KODU = TBLCARIPLASIYER.PLASIYER_KODU)             
                                                    WHERE (CARI_KOD=@CKOD)
                                                    AND (DOVIZ_TURU=@DOVTIP)
                                                    AND (CASE WHEN BORC>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE BORC END)>0
                                                    ORDER BY VADE_TARIHI DESC

                            OPEN HAREKET                                    
                            SET @TOPLAM = 0
                            FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@BORC,@ALACAK,@INC_KEY_NUMBER,@DOVIZ_TUTAR,@FIRMA_DOVIZ_TIPI,@FIRMA_DOVIZ_TUTARI,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA
                            WHILE @@FETCH_STATUS<>-1 AND ( @BAKIYE > @TOPLAM )
                            BEGIN
                                
                                SET @TOPLAM = @TOPLAM + @BORC        
                                SET @SONALACAK = @BORC
                                SET @ASILTUTAR = @BORC
                                
                                IF @TOPLAM >= @BAKIYE
                                   BEGIN
                                     SET @SONALACAK = @BORC
                                     SET @BORC = (@TOPLAM - @BAKIYE - @BORC) * -1
                                     IF  @SONALACAK = @BORC SET @SONALACAK = @BORC
                                   ELSE
                                      SET @SONALACAK = @BORC
                                   END
                                
                                INSERT INTO @TEMP VALUES (@CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@BORC,@ALACAK,@VADE_TARIHI,@ASILTUTAR,@DOVIZ_TURU,@DOVIZ_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@PROJE_KODU,@INC_KEY_NUMBER)
                                FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@BORC,@ALACAK,@INC_KEY_NUMBER,@DOVIZ_TUTAR,@FIRMA_DOVIZ_TIPI,@FIRMA_DOVIZ_TUTARI,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA                           
                             END
                          CLOSE HAREKET
                          DEALLOCATE HAREKET
                        END
                END


            FETCH NEXT FROM CURCARI INTO @CKOD,@DOVTIP,@TB,@TA,@DB,@DA,@KURISIM,@HESAPTUTMASEKLI
    
            END

        CLOSE CURCARI
        DEALLOCATE CURCARI

    END

IF @DOVIZLIMI='H'
    BEGIN
        DECLARE CURCARI CURSOR FOR
        SELECT CARI_KOD,0,CM_BORCT,CM_ALACT,0,0,'YTL',HESAPTUTMASEKLI FROM TBLCASABIT WHERE CARI_KOD LIKE @CARIKODU ORDER BY CARI_KOD
        
        

        OPEN CURCARI
        FETCH NEXT FROM CURCARI INTO @CKOD,@DOVTIP,@TB,@TA,@DB,@DA,@KURISIM,@HESAPTUTMASEKLI
        WHILE @@FETCH_STATUS <> -1
            BEGIN
                    IF @HESAPTUTMASEKLI='K'
                    BEGIN
                        DECLARE HAREKET CURSOR FOR
                        SELECT CARI_KOD,(SELECT CARI_ISIM FROM TBLCASABIT WITH (NOLOCK) WHERE TBLCASABIT.CARI_KOD = TBLCAHAR.CARI_KOD),BELGE_NO,TARIH,ACIKLAMA,VADE_TARIHI,TBLCAHAR.PROJE_KODU,DOVIZ_TURU,TBLCAHAR.SUBE_KODU,HAREKET_TURU,(CASE WHEN BORC>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE BORC END),(CASE WHEN ALACAK>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE ALACAK END),DOVIZ_TUTAR,KAPATILMIS_TUTAR,TBLCAHAR.PLASIYER_KODU,PLASIYER_ACIKLAMA,INC_KEY_NUMBER FROM TBLCAHAR WITH (NOLOCK)  
                        LEFT OUTER JOIN TBLCARIPLASIYER WITH (NOLOCK) ON (TBLCAHAR.PLASIYER_KODU = TBLCARIPLASIYER.PLASIYER_KODU)             
                        WHERE BORC+ALACAK  <> KAPATILMIS_TUTAR AND (CARI_KOD=@CKOD) AND DOVIZ_TURU = @DOVTIP
                        ORDER BY VADE_TARIHI DESC
                     
                        OPEN HAREKET
                        FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@HAREKET_TURU,@BORC,@ALACAK,@DOVIZ_TUTAR,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@INC_KEY_NUMBER
                        WHILE @@FETCH_STATUS <> -1
                        BEGIN
                            SET @SONALACAK = (@BORC + @ALACAK)  
                            SET @ASILTUTAR = (@BORC + @ALACAK)  
                            IF @BORC > 0  SET @BORC = @BORC - @KAPATILMIS_TUTAR
                            IF @ALACAK > 0  SET @ALACAK = @ALACAK   - @KAPATILMIS_TUTAR
                            INSERT INTO @TEMP VALUES (@CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@BORC,@ALACAK,@VADE_TARIHI,@ASILTUTAR,@DOVIZ_TURU,@DOVIZ_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@PROJE_KODU,@INC_KEY_NUMBER)
                               FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@HAREKET_TURU,@BORC,@ALACAK,@DOVIZ_TUTAR,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@INC_KEY_NUMBER
                            END
                        CLOSE HAREKET
                      DEALLOCATE HAREKET
                    END

                    IF @HESAPTUTMASEKLI = 'Y ' AND @TB < @TA
                    BEGIN
                        SET @BAKIYE = @TA-@TB    -- ALACAK
                        DECLARE HAREKET CURSOR FOR SELECT CARI_KOD,(SELECT CARI_ISIM FROM TBLCASABIT WITH (NOLOCK) WHERE TBLCASABIT.CARI_KOD = TBLCAHAR.CARI_KOD), BELGE_NO,TARIH,ACIKLAMA,VADE_TARIHI,TBLCAHAR.PROJE_KODU,DOVIZ_TURU,TBLCAHAR.SUBE_KODU,BORC,ALACAK,INC_KEY_NUMBER,DOVIZ_TUTAR,FIRMA_DOVIZ_TIPI,FIRMA_DOVIZ_TUTARI,KAPATILMIS_TUTAR,TBLCAHAR.PLASIYER_KODU,PLASIYER_ACIKLAMA FROM TBLCAHAR WITH (NOLOCK)  
                                                LEFT OUTER JOIN TBLCARIPLASIYER WITH (NOLOCK) ON (TBLCAHAR.PLASIYER_KODU = TBLCARIPLASIYER.PLASIYER_KODU)             
                                                WHERE (CARI_KOD=@CKOD)
                                                --AND (CASE WHEN ALACAK>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE ALACAK END)>0
                                                AND ALACAK>0
                                                ORDER BY VADE_TARIHI DESC
                        OPEN HAREKET                                    
                        SET @TOPLAM = 0
                        FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@BORC,@ALACAK,@INC_KEY_NUMBER,@DOVIZ_TUTAR,@FIRMA_DOVIZ_TIPI,@FIRMA_DOVIZ_TUTARI,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA
                        WHILE @@FETCH_STATUS<>-1 AND ( @BAKIYE > @TOPLAM )
                        BEGIN
                            
                            SET @TOPLAM = @TOPLAM + @ALACAK       
                            SET @SONALACAK = @ALACAK
                            SET @ASILTUTAR = @ALACAK
                            IF @TOPLAM >= @BAKIYE
                               BEGIN
                                 SET @SONALACAK = @ALACAK
                                 SET @ALACAK = (@TOPLAM - @BAKIYE - @ALACAK) * -1
                                 IF  @SONALACAK = @ALACAK SET @SONALACAK = @ALACAK
                               ELSE
                                  SET @SONALACAK = @ALACAK
                               END
                            
                            INSERT INTO @TEMP VALUES (@CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@BORC,@ALACAK,@VADE_TARIHI,@ASILTUTAR,@DOVIZ_TURU,@DOVIZ_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@PROJE_KODU,@INC_KEY_NUMBER)
                            FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@BORC,@ALACAK,@INC_KEY_NUMBER,@DOVIZ_TUTAR,@FIRMA_DOVIZ_TIPI,@FIRMA_DOVIZ_TUTARI,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA
                         END
                      CLOSE HAREKET
                      DEALLOCATE HAREKET
                    END

                    IF @HESAPTUTMASEKLI = 'Y ' AND @TA < @TB
                    BEGIN
                        SET @BAKIYE = @TB-@TA    -- BORC
                        DECLARE HAREKET CURSOR FOR SELECT CARI_KOD,(SELECT CARI_ISIM FROM TBLCASABIT WITH (NOLOCK) WHERE TBLCASABIT.CARI_KOD = TBLCAHAR.CARI_KOD), BELGE_NO,TARIH,ACIKLAMA,VADE_TARIHI,TBLCAHAR.PROJE_KODU,DOVIZ_TURU,TBLCAHAR.SUBE_KODU,BORC,ALACAK,INC_KEY_NUMBER,DOVIZ_TUTAR,FIRMA_DOVIZ_TIPI,FIRMA_DOVIZ_TUTARI,KAPATILMIS_TUTAR,TBLCAHAR.PLASIYER_KODU,PLASIYER_ACIKLAMA FROM TBLCAHAR WITH (NOLOCK)  
                                                LEFT OUTER JOIN TBLCARIPLASIYER WITH (NOLOCK) ON (TBLCAHAR.PLASIYER_KODU = TBLCARIPLASIYER.PLASIYER_KODU)             
                                                WHERE (CARI_KOD=@CKOD)
                                                --AND (CASE WHEN BORC>0 AND DOVIZ_TURU <> 0 THEN DOVIZ_TUTAR ELSE BORC END)>0
                                                AND BORC>0
                                                ORDER BY VADE_TARIHI DESC
                        OPEN HAREKET                                    
                        SET @TOPLAM = 0
                        FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@BORC,@ALACAK,@INC_KEY_NUMBER,@DOVIZ_TUTAR,@FIRMA_DOVIZ_TIPI,@FIRMA_DOVIZ_TUTARI,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA
                        WHILE @@FETCH_STATUS<>-1 AND ( @BAKIYE > @TOPLAM )
                        BEGIN
                            
                            SET @TOPLAM = @TOPLAM + @BORC       
                            SET @SONALACAK = @BORC
                            SET @ASILTUTAR = @BORC
                            IF @TOPLAM >= @BAKIYE
                               BEGIN
                                 SET @SONALACAK = @BORC
                                 SET @BORC = (@TOPLAM - @BAKIYE - @BORC) * -1
                                 IF  @SONALACAK = @BORC SET @SONALACAK = @BORC
                               ELSE
                                  SET @SONALACAK = @BORC
                               END
                            
                            INSERT INTO @TEMP VALUES (@CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@BORC,@ALACAK,@VADE_TARIHI,@ASILTUTAR,@DOVIZ_TURU,@DOVIZ_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA,@PROJE_KODU,@INC_KEY_NUMBER)
                            FETCH NEXT FROM HAREKET INTO @CARI_KOD,@CARI_ISIM,@BELGE_NO,@TARIH,@ACIKLAMA,@VADE_TARIHI,@PROJE_KODU,@DOVIZ_TURU,@SUBE_KODU,@BORC,@ALACAK,@INC_KEY_NUMBER,@DOVIZ_TUTAR,@FIRMA_DOVIZ_TIPI,@FIRMA_DOVIZ_TUTARI,@KAPATILMIS_TUTAR,@PLASIYER_KODU,@PLASIYER_ACIKLAMA
                         END
                      CLOSE HAREKET
                      DEALLOCATE HAREKET
                    END


            FETCH NEXT FROM CURCARI INTO @CKOD,@DOVTIP,@TB,@TA,@DB,@DA,@KURISIM,@HESAPTUTMASEKLI
    
            END


        CLOSE CURCARI
        DEALLOCATE CURCARI



    END
    
    

RETURN

END
İnnova Antalya Proje Danışmanlık
Orhan ÇÖPÜROĞLU

0544 241 45 55
0242 311 45 56
Yukarı Dön
rhan Açılır Kutu İzle
Kidemli Üye
Kidemli Üye
Simge

Kayıt Tarihi: 05 Temmuz 2008
Durum: Aktif Değil
Puanlar: 590
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı rhan Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 08 Mart 2016 Saat 17:56
SELECT * FROM [dbo].[OZELYASLANDIR]('', 'H')
İnnova Antalya Proje Danışmanlık
Orhan ÇÖPÜROĞLU

0544 241 45 55
0242 311 45 56
Yukarı Dön
social Açılır Kutu İzle
Kidemli Üye
Kidemli Üye
Simge

Kayıt Tarihi: 10 Ekim 2007
Konum: İzmir
Durum: Aktif Değil
Puanlar: 512
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı social Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 08 Mart 2016 Saat 18:32
tesekkurler ama bu benim istedigimi karsilamiyor
Yukarı Dön
Conari Açılır Kutu İzle
Kidemli Üye
Kidemli Üye
Simge

Kayıt Tarihi: 04 Mayıs 2007
Konum: YSTANBUL
Durum: Aktif Değil
Puanlar: 3513
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı Conari Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 09 Mart 2016 Saat 13:09
select * from tblcahar where alacak>0 and KAPATILMIS_TUTAR<>ALACAK
 
Dövizliler için, döviz tipi kontrolü eklenmeli ve döviz tutarina bakilmali
Netsisden vazgeçemiyorum. Beni engelliyor..
Yukarı Dön
social Açılır Kutu İzle
Kidemli Üye
Kidemli Üye
Simge

Kayıt Tarihi: 10 Ekim 2007
Konum: İzmir
Durum: Aktif Değil
Puanlar: 512
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı social Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 23 Mart 2016 Saat 12:15
Orjinalini yazan: Conari Conari Yazdı:

select * from tblcahar where alacak>0 and KAPATILMIS_TUTAR<>ALACAK
 
Dövizliler için, döviz tipi kontrolü eklenmeli ve döviz tutarina bakilmali


BUNA ALACAK BAKIYESI 1 TL UZERINDE OLANLARI ALMAMASINI SAGLAMAK LAZIM,sorun soyle oluyor mesela 1057,70 borc bakiyeli musteriden 1057,71 tahsilat yapilmis ve kapatmasi yapilmis,alacak bakiyesi 0,01kr kaldigindan oturu rapora bunu getiriyor hemde 0,01kr olarak degilde 1057,71 olarak tam tahsilatini getiriyor
Yukarı Dön
Conari Açılır Kutu İzle
Kidemli Üye
Kidemli Üye
Simge

Kayıt Tarihi: 04 Mayıs 2007
Konum: YSTANBUL
Durum: Aktif Değil
Puanlar: 3513
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı Conari Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 24 Mart 2016 Saat 17:34
Hocam zaten * from dedik hepsi gelsin, diye sen bir kere istedigin alanlari seçeceksin.
 
he kalan bakiyesi 1 TL altinda olanlar gelmesin diyorsan..
 
select *, ALACAK-KAPATILMIS_TUTAR  AS KALAN from tblcahar where alacak>0 and KAPATILMIS_TUTAR<>ALACAK  AND (ALACAK-KAPATILMIS_TUTAR)>1
Netsisden vazgeçemiyorum. Beni engelliyor..
Yukarı Dön
 Yanıt Yaz Yanıt Yaz
  Konu Paylaş   

Forum Atla Forum İzinleri Açılır Kutu İzle

Forum Software by Web Wiz Forums® version 11.10
Copyright ©2001-2017 Web Wiz Ltd.

Bu Sayfa 0,681 Saniyede Yüklendi.