Exemplo n.º 1
0
        /// <summary>
        /// Depo Transfer kayıt işlemleri
        /// </summary>
        public Result TahsilatKaydet(frmOnayTahsilatList tahsilatItem, string user)
        {
            int seriNo = 1;

            if (tahsilatItem.IslemTuru == "Tahsilat")
            {
                seriNo = 1;
            }
            else if (tahsilatItem.IslemTuru == "İskonto")
            {
                seriNo = 3;
            }

            List <string> EvrakBilgi = SqlExper.SelectList <string>(string.Format(@"
            SELECT EvrakNo FROM YNS{{0}}.YNS{{0}}.EvrakIni(NOLOCK) WHERE SeriNo={0}
            UNION ALL
            SELECT CAST(MAX(CAR003_SEQNo) as VarChar) EvrakNo FROM YNS{{0}}.YNS{{0}}.CAR003(NOLOCK)", seriNo));

            string EvrakNo = EvrakBilgi[0];
            int    SeqNo   = EvrakBilgi[1].ToInt32();

            int tarih = tahsilatItem.Tarih.ToDatetime().ToOADateInt();

            string kayitSaat = DateTime.Now.ToString("HHmmss"); ///O anın saatini döner

            if (tahsilatItem.IslemTuru == "Tahsilat")
            {
                if (tahsilatItem.KapatilanTL > 0)
                {
                    SqlExper.Komut(string.Format("EXEC YNS{0}.dbo.FaturalariKapat 0,'{1}','{2}',{3},{4},{5},'{6}','{7}','{8}',{9},'{10}','{11}',{12}",
                                                 SirketKodu, tahsilatItem.HesapKodu, EvrakNo, tahsilatItem.KapatilanTL.ToDot(), tahsilatItem.KapatilanTL.ToDot(),
                                                 tarih, EvrakNo, tahsilatItem.OdemeTuru, "TL", SeqNo + 1, kayitSaat, user, 0.0));
                }

                if (tahsilatItem.KapatilanUSD > 0)
                {
                    SqlExper.Komut(string.Format("EXEC YNS{0}.dbo.FaturalariKapat 0,'{1}','{2}',{3},{4},{5},'{6}','{7}','{8}',{9},'{10}','{11}',{12}",
                                                 SirketKodu, tahsilatItem.HesapKodu + "$", EvrakNo, tahsilatItem.KapatilanUSD.ToDot(), (tahsilatItem.KapatilanUSD * tahsilatItem.USDKur).ToDot(),
                                                 tarih, EvrakNo, tahsilatItem.OdemeTuru, "USD", SeqNo + 1, kayitSaat, user, tahsilatItem.USDKur.ToDot()));
                }

                if (tahsilatItem.KapatilanEUR > 0)
                {
                    SqlExper.Komut(string.Format("EXEC YNS{0}.dbo.FaturalariKapat 0,'{1}','{2}',{3},{4},{5},'{6}','{7}','{8}',{9},'{10}','{11}',{12}",
                                                 SirketKodu, tahsilatItem.HesapKodu + "EU", EvrakNo, tahsilatItem.KapatilanEUR.ToDot(), (tahsilatItem.KapatilanEUR * tahsilatItem.EURKur).ToDot(),
                                                 tarih, EvrakNo, tahsilatItem.OdemeTuru, "EUR", SeqNo + 1, kayitSaat, user, tahsilatItem.EURKur.ToDot()));
                }
            }
            else if (tahsilatItem.IslemTuru == "İskonto")
            {
                DovizKurlari DovizKurlari = SqlExper.SelectFirst <DovizKurlari>(string.Format(DovizKurlari.Sorgu, tarih, tarih - 1, tarih - 2));

                if (DovizKurlari.IsNull() || DovizKurlari.USD <= 0 || DovizKurlari.EUR <= 0)
                {
                    throw new Exception("İlgili tarihle alakalı geçerli(0 dan büyük) döviz kuru bulunamadı ! \n DVZ002 tablosunu kontrol ediniz.");
                }

                string  paraCinsi = "TL", ekHesapKod = "";
                decimal islemTutar = 0, islemTutarTL = 0, dovizKuru = 0;

                islemTutar   = tahsilatItem.Tutar;
                islemTutarTL = islemTutar;
                if (tahsilatItem.DovizCinsi == "USD")
                {
                    paraCinsi    = "USD";
                    islemTutarTL = islemTutar * DovizKurlari.USD;
                    dovizKuru    = DovizKurlari.USD;
                    ekHesapKod   = "$";
                }
                else if (tahsilatItem.DovizCinsi == "EUR")
                {
                    paraCinsi    = "EUR";
                    islemTutarTL = islemTutar * DovizKurlari.EUR;
                    dovizKuru    = DovizKurlari.EUR;
                    ekHesapKod   = "EU";
                }

                SqlExper.Komut(string.Format("EXEC YNS{0}.dbo.FaturalariKapat 1,'{1}','{2}',{3},{4},{5},'{6}','{7}','{8}',{9},'{10}','{11}',{12}",
                                             SirketKodu, tahsilatItem.HesapKodu + ekHesapKod, EvrakNo, islemTutar.ToDot(), islemTutarTL.ToDot(),
                                             tarih, EvrakNo, tahsilatItem.OdemeTuru, paraCinsi, SeqNo + 1, kayitSaat, user, dovizKuru.ToDot()));
            }

            string seri = EvrakNo.Substring(0, 2);

            EvrakNo = EvrakNo.Remove(0, 2);
            EvrakNo = EvrakNoOlustur(8, seri, EvrakNo.ToInt32());
            EvrakIni evrakIni = new EvrakIni
            {
                pk_SeriNo = seriNo,
                EvrakNo   = EvrakNo
            };

            SqlExper.Update(evrakIni);

            return(SqlExper.AcceptChanges());
        }
Exemplo n.º 2
0
        public void SatisIadeOnay(SatisIadeOnay SIOnay)
        {
            var Sorgu = string.Empty;
            var saat  = DateTime.Now.ToString("HHmmss");
            var tarih = DateTime.Today.ToOADateInt();

            if (SIOnay.Onay)
            {
                for (int i = 0; i < SIOnay.tbl.Row_ID.Length; i++)
                {
                    Sorgu = Sorgu + string.Format("update YNS{0}.YNS{0}.STK005 set STK005_BirimFiyati={1} where STK005_Row_ID={2}", SirketKodu
                                                  , SIOnay.tbl.Fiyat[i].Replace(',', ';').Replace('.', ' ').Replace(';', '.').Replace(" ", string.Empty)
                                                  , SIOnay.tbl.Row_ID[i]);
                }

                Sorgu = Sorgu + string.Format(@"
                UPDATE STI1
                SET STI1.STK005_Kod10='Onaylandı', STI1.STK005_DegistirenKodu='{1}', STI1.STK005_DegistirenTarih={2}, STI1.STK005_DegistirenSaat='{3}',
                STI1.STK005_CariHesapKodu=STI2.STK005_CariHesapKodu,
                STI1.STK005_Tutari=(STI1.STK005_Miktari * STI1.STK005_BirimFiyati), STI1.STK005_DovizCinsi=STI2.STK005_DovizCinsi
                FROM  YNS{0}.YNS{0}.STK005(NOLOCK) STI1
                INNER JOIN YNS{0}.YNS{0}.STK005(NOLOCK) STI2 ON STI1.STK005_Kod9=STI2.STK005_EvrakSeriNo AND
                CAST(STI1.STK005_Kod11 as INT)=STI2.STK005_Row_ID AND  STI2.STK005_EvrakTipi=11 AND STI1.STK005_MalKodu=STI2.STK005_MalKodu

                WHERE STI1.STK005_EvrakTipi in(99, 22) AND STI1.STK005_IslemTipi=2 AND STI1.STK005_GC=0 AND STI1.STK005_Kod11>0 AND STI1.STK005_Kod9<>'' AND
                      STI1.STK005_Kod10='Onay Bekliyor' AND SUBSTRING(STI1.STK005_Not5,1,8)='AndMobil' AND
	                  STI1.STK005_EvrakSeriNo='{4}' AND STI1.STK005_IslemTarihi={5} "    ,
                                              SirketKodu, SIOnay.Kaydeden, tarih, saat, SIOnay.IadeNo, SIOnay.IadeTarih);

                SatisIadeKayit evrakBilgi = SqlExper.SelectList <SatisIadeKayit>(string.Format(@"
                   SELECT  STI2.STK005_CariHesapKodu, STI1.STK005_IslemTarihi, STI1.STK005_EvrakSeriNo,
                           STI1.STK005_IadeFaturaNo, STI1.STK005_VadeTarihi, STI2.STK005_ParaBirimi,
                           STI1.STK005_AsilEvrakTarihi, STI2.STK005_DovizCinsi, STI2.STK005_DovizKuru,
                           STI1.STK005_SEQNo
                   FROM  YNS{0}.YNS{0}.STK005(NOLOCK) STI1
                   INNER JOIN YNS{0}.YNS{0}.STK005(NOLOCK) STI2 ON STI1.STK005_Kod9=STI2.STK005_EvrakSeriNo AND
                CAST(STI1.STK005_Kod11 as INT)=STI2.STK005_Row_ID AND  STI2.STK005_EvrakTipi=11 AND STI1.STK005_MalKodu=STI2.STK005_MalKodu
                   WHERE STI1.STK005_Row_ID={1}", SirketKodu, SIOnay.tbl.Row_ID[0])).FirstOrDefault();

                if (evrakBilgi.IsNotNull())
                {
                    #region CHI INSERT

                    Sorgu = Sorgu + string.Format(@"
                    INSERT INTO YNS{0}.YNS{0}.CAR003(
                    [CAR003_HesapKodu], [CAR003_Tarih], [CAR003_IslemTipi], [CAR003_EvrakSeriNo], [CAR003_Aciklama], [CAR003_BA], [CAR003_Tutar], [CAR003_VadeTarihi],
                    [CAR003_KarsiEvrakSeriNo], [CAR003_Kod1], [CAR003_Kod2], [CAR003_KDVOrani], [CAR003_KDVDahilHaric], [CAR003_MuhasebelesmeDurumu], [CAR003_ParaBirimi],
                    [CAR003_SEQNo], [CAR003_GirenKaynak], [CAR003_GirenTarih], [CAR003_GirenSaat], [CAR003_GirenKodu], [CAR003_GirenSurum], [CAR003_DegistirenKaynak],
                    [CAR003_DegistirenTarih], [CAR003_DegistirenSaat], [CAR003_DegistirenKodu], [CAR003_DegistirenSurum], [CAR003_IptalDurumu], [CAR003_AsilEvrakTarihi], 
                    [CAR003_otvdahilharic], [CAR003_otvtutari], [CAR003_KarsiHesapKodu], [CAR003_Kod3], [CAR003_Kod4], [CAR003_Kod5], [CAR003_Kod6], [CAR003_Kod7], [CAR003_Kod8],
                    [CAR003_Kod9], [CAR003_Kod10], [CAR003_Kod11], [CAR003_Kod12], [CAR003_Tutar2], [CAR003_Tarih2], [CAR003_Aciklama2], [CAR003_EvrakSeriNo2], [CAR003_DovizCinsi],
                    [CAR003_DovizTutari], [CAR003_DovizKuru], [CAR003_SenetCekBordroNo], [CAR003_SenetCekPozisyonTipi], [CAR003_MuhasebelesmeSekli], [CAR003_MuhasebeFisTarihi],
                    [CAR003_MuhasebeTipi], [CAR003_MuhasebeFisNumarasi], [CAR003_MuhasebeFisKodu], [CAR003_MuhasebeSiraNo], [CAR003_MuhasebeHesapNo], [CAR003_MuhasebeKarsiHeaspNo],
                    [CAR003_MuhasebeYevmiyeSekli], [CAR003_IskontoTuru], [CAR003_EvrakSeriNo3], [CAR003_MasrafMerkezi], [CAR003_VadeFarkiTarihi], [CAR003_VadeFarkiTutari], 
                    [CAR003_FaizOrani], [CAR003_Ulke], [CAR003_VergiHesapNo], [CAR003_Unvani], [CAR003_EvrakSayisi], [CAR003_EvrakTipi], [CAR003_MHSMaddeNo], [CAR003_IBAN], 
                    [CAR003_KKPOSTableRowID], [CAR003_KKTaksitSayisi], [CAR003_KKTaksitNo], [CAR003_KKKomisyonID], [CAR003_KDVTevkIslemTuru], [CAR003_KDVTevkOrani], 
                    [CAR003_IthalatNo], [CAR003_IthalatAktarmaFlag], [CAR003_KDVTevkIslemBedeli], [CAR003_OdemeTipi], [CAR003_YevmiyeEvrakTip], [CAR003_EvrakTipAciklama], 
                    [CAR003_EFaturaTipi], [CAR003_EFaturaDurumu], [CAR003_EFaturaOTVListeNo], [CAR003_EFaturaDonemBas], [CAR003_EFaturaDonemBit], [CAR003_EFaturaSure], 
                    [CAR003_EFaturaSureBirimi], [CAR003_EFaturaDonemAciklama], [CAR003_EFaturaNot], [CAR003_EFaturaReferansNo], [CAR003_YevEvrakNo], [CAR003_YevEvrakTarihi], 
                    [CAR003_StopajOrani], [CAR003_OdemeTuru], [CAR003_TalimatNo], [CAR003_IhracatNo], [CAR003_GrpSiraNo], [CAR003_EArsivFaturaTipi], 
                    [CAR003_EArsivFaturaTeslimSekli], [CAR003_EArsivFaturaDurumu], [CAR003_EArsivAdres], [CAR003_EArsivSemt], [CAR003_EArsivIL], [CAR003_Unvani2], 
                    [CAR003_YOKCSeriNo], [CAR003_YOKCZRaporuNo], [CAR003_YOKCBelgeTipi], [CAR003_YOKCBilgiFisiTipi], [CAR003_YOKCFisNo], [CAR003_YOKCFisTarihi], 
                    [CAR003_OdemeTurKodu], [CAR003_VergiDairesiKodu], [CAR003_FiiliIhracatTarihi], [CAR003_YOKCFisSaat], [CAR003_YOKCDuzenlemeTip], [CAR003_YOKCBankaOnayKod], 
                    [CAR003_YOKCUniqueID])
                    VALUES
                    ('{1}', {2}, 8, '{3}', 'Faturası', 1, 0, {4},
                    '', '', '', 4, 0, 0, {5},
                    {6}, 'EL001', {7}, '{8}', '{9}', '7.1.00', 'EL001',
                    {7}, '{8}', '{9}', '7.1.00', 1, {12},
                    0, 0, '', '', '', '', '', '', '',
                    '', '', 0, 0, 0, 0, '', '', '{10}',
                    0, {11}, '', 0, 1, 0,
                    0, 0, '', 0, '', '',
                    0, '', '', '', 0, 0,
                    0, 0, '', '', 1, 22, 0, '',
                    0, 0, 0, 0, 0, '',
                    '', 0, 0, '', null, '',
                    0, null, '', 0, 0, 0,
                    0, '', '', '', '', 0,
                    0, 0, '', '', 0, null,
                    null, null, '', '', '', '',
                    '', null, null, null, null, 0,
                    '', 0, 0, null, null, '',
                    '')"
                                                  , SirketKodu, evrakBilgi.STK005_CariHesapKodu, evrakBilgi.STK005_IslemTarihi, evrakBilgi.STK005_EvrakSeriNo, evrakBilgi.STK005_VadeTarihi
                                                  , evrakBilgi.STK005_ParaBirimi
                                                  , evrakBilgi.STK005_SEQNo, DateTime.Today.Date.ToOADate().ToInt32(), saat, SIOnay.Kaydeden
                                                  , evrakBilgi.STK005_DovizCinsi
                                                  , evrakBilgi.STK005_DovizKuru.ToDot(), evrakBilgi.STK005_AsilEvrakTarihi);

                    #endregion CHI INSERT

                    #region CHI - CHK UPDATE

                    //CHI Tutar Update
                    Sorgu += string.Format(@"
                    UPDATE YNS{0}.YNS{0}.CAR003 SET CAR003_Tutar=(SELECT SUM(STK005_Tutari) FROM YNS{0}.YNS{0}.STK005(NOLOCK) 
                    WHERE STK005_EvrakTipi in(99, 22) AND STK005_IslemTipi=2 AND STK005_GC=0 AND STK005_EvrakSeriNo='{1}')
                    WHERE CAR003_EvrakTipi in(99, 22) and CAR003_IslemTipi=8 and CAR003_EvrakSeriNo='{1}'",
                                           SirketKodu, evrakBilgi.STK005_EvrakSeriNo);

                    //CHK IadeAlacak Update
                    Sorgu += string.Format(@"
                    UPDATE YNS{0}.YNS{0}.CAR002 SET CAR002_IadeAlacak+=(SELECT SUM(STK005_Tutari) FROM YNS{0}.YNS{0}.STK005(NOLOCK) WHERE
                    STK005_EvrakTipi in(99, 22) AND STK005_IslemTipi=2 AND STK005_GC=0 AND STK005_EvrakSeriNo='{1}')
                    WHERE CAR002_HesapKodu='{2}'",
                                           SirketKodu, evrakBilgi.STK005_EvrakSeriNo, evrakBilgi.STK005_CariHesapKodu);

                    #endregion CHI - CHK UPDATE
                }
            }
            else
            {
                Sorgu = string.Format(@"
                UPDATE YNS{0}.YNS{0}.STK005 SET STK005_Kod10='Reddedildi', STK005_DegistirenKodu='{1}', STK005_DegistirenTarih={2}, STK005_DegistirenSaat='{3}'
                WHERE STK005_EvrakTipi in(99, 22) AND STK005_IslemTipi=2 AND STK005_GC=0 AND STK005_Kod11>0 AND STK005_Kod9<>'' AND
                STK005_Kod10='Onay Bekliyor' AND SUBSTRING(STK005_Not5,1,8)='AndMobil' AND
                STK005_EvrakSeriNo='{4}' AND STK005_IslemTarihi={5} ",
                                      SirketKodu, SIOnay.Kaydeden, tarih, saat, SIOnay.IadeNo, SIOnay.IadeTarih);
            }

            SqlExper.Komut(Sorgu);
            SqlExper.AcceptChanges();
        }