Exemple #1
0
        public Result DepoTransferKaydet(List <DepoTran> TransferUrunleri)
        {
            var OndalikAyiracVirgul = OndalikAyiracVirgulMu();

            string evrakNo = "", yeniEvrakNo = "";
            var    siraNo = 0;

            var evrakBilgi = new STIEvrakBilgi();
            var veriList   = SqlExper.SelectList <STIEvrakBilgi>(string.Format(@"
            SELECT TOP 1 STK005_EvrakSeriNo AS EvrakNo,
                    STK005_SEQNo as SiraNo
            FROM YNS{0}.YNS{0}.STK005 (NOLOCK)
            WHERE STK005_EvrakTipi=51 AND STK005_EvrakSeriNo Like 'T%'
            ORDER BY STK005_Row_ID DESC", SirketKodu)).ToList();

            if (veriList.IsNull() || veriList.Count == 0)
            {
                evrakNo = "T0000000";
                siraNo  = 0;
            }
            else
            {
                evrakNo = veriList[0].EvrakNo;
                siraNo  = veriList[0].SiraNo;
            }

            evrakNo = evrakNo.Remove(0, 1);
            var no = evrakNo.ToInt32();

            yeniEvrakNo = EvrakNoOlustur(8, "T", no);

            var saat  = DateTime.Now.ToString("HHmmss"); ///O anın saatini döner 154010 gibi
            var tarih = DateTime.Today.ToOADateInt();

            foreach (DepoTran item in TransferUrunleri)
            {
                siraNo++;
                var stiItem = new STK005();
                stiItem.DefaultValueSet();
                stiItem.STK005_EvrakSeriNo = yeniEvrakNo;
                stiItem.STK005_MalKodu     = item.MalKodu;
                stiItem.STK005_Depo        = item.CikisDepo;
                stiItem.STK005_Birim       = item.Birim;
                stiItem.STK005_Miktari     = item.Miktar;
                stiItem.STK005_Tarih2      = item.MiatTarih;//miat tarihi
                stiItem.STK005_GC          = 1;

                stiItem.STK005_ParaBirimi = 1;
                stiItem.STK005_SEQNo      = siraNo;

                stiItem.STK005_IslemTipi           = 7;
                stiItem.STK005_EvrakTipi           = 51;
                stiItem.STK005_MuhasebelesmeDurumu = 0;
                stiItem.STK005_IptalDurumu         = 1;
                stiItem.STK005_IslemTarihi         = tarih;
                stiItem.STK005_AsilEvrakTarihi     = tarih;

                stiItem.STK005_GirenKaynak      = "Y6018";
                stiItem.STK005_GirenSurum       = "7.1.00";
                stiItem.STK005_GirenKodu        = item.KullaniciKodu;
                stiItem.STK005_GirenTarih       = DateTime.Today.Date.ToOADate().ToInt32();
                stiItem.STK005_GirenSaat        = DateTime.Now.ToString("HHmmss"); ///O anın saatini döner 154010 gibi
                stiItem.STK005_DegistirenKaynak = "Y6018";
                stiItem.STK005_DegistirenSurum  = "7.1.00";
                stiItem.STK005_DegistirenKodu   = item.KullaniciKodu;
                stiItem.STK005_DegistirenTarih  = DateTime.Today.Date.ToOADate().ToInt32();
                stiItem.STK005_DegistirenSaat   = DateTime.Now.ToString("HHmmss"); ///O anın saatini döner
                SqlExper.Insert(stiItem);

                siraNo++;
                stiItem.STK005_SEQNo = siraNo;
                stiItem.STK005_Depo  = item.GirisDepo;
                stiItem.STK005_GC    = 0;
                SqlExper.Insert(stiItem);
            }

            SqlExper.AcceptChanges();
            return(new Result());
        }
Exemple #2
0
        /// <summary>
        /// fatura kaydetme işllemleri
        /// </summary>
        public Result FaturaKaydet(List <SepetUrun> pSepetUrunleri)
        {
            var OndalikAyiracVirgul = OndalikAyiracVirgulMu();

            FaturaSatirlari = new List <STK005>();

            EvrakNolari_YukleAyarla();
            HesapListesini_YukleAyarla(pSepetUrunleri[0].HesapKodu);

            var faturaSiraNo  = EvrakNoList[0].SiraNo;
            var siparisSiraNo = EvrakNoList[1].SiraNo;
            var saat          = DateTime.Now.ToString("HHmmss"); //O anın saatini döner 154010 gibi

            foreach (SepetUrun item in pSepetUrunleri)
            {
                if (OndalikAyiracVirgul)
                {
                    item.Miktar = item.Miktar.Replace(".", ",");
                    item.Fiyat  = item.Fiyat.Replace(".", ",");
                }

                var hesapKodu = "";
                var hesap     = HesapList.Find(x => x.ParaBirimi.ToUpper() == item.ParaCinsi.ToUpper());
                if (hesap.IsNullEmpty())
                {
                    throw new Exception("Hesapla ilgili stoğun döviz cinsleri uyuşmamaktadır !");
                }
                hesapKodu = hesap.HesapKodu;
                faturaSiraNo++;
                var fatura = new STK005();
                fatura.DefaultValueSet();
                fatura.STK005_MalKodu                   = item.UrunKodu;
                fatura.STK005_IslemTarihi               = DateTime.Today.ToOADate().ToInt32();
                fatura.STK005_GC                        = 1;
                fatura.STK005_CariHesapKodu             = hesapKodu;
                fatura.STK005_TeslimCHKodu              = hesapKodu;
                fatura.STK005_EvrakSeriNo               = EvrakNoList[0].EvrakNo;
                fatura.STK005_Miktari                   = item.Miktar.ToDecimal();
                fatura.STK005_BirimFiyati               = item.Fiyat.ToDecimal();
                fatura.STK005_Tutari                    = item.Miktar.ToDecimal() * item.Fiyat.ToDecimal();
                fatura.STK005_IslemTipi                 = 2;
                fatura.STK005_EvrakTipi                 = 11;
                fatura.STK005_KDVOranFlag               = 4;
                fatura.STK005_FaturaDurumu              = 1;
                fatura.STK005_ParaBirimi                = 1;
                fatura.STK005_SEQNo                     = faturaSiraNo;
                fatura.STK005_IptalDurumu               = 1;
                fatura.STK005_AsilEvrakTarihi           = fatura.STK005_IslemTarihi;
                fatura.STK005_SevkTarihi                = fatura.STK005_IslemTarihi;
                fatura.STK005_VadeTarihi                = fatura.STK005_IslemTarihi + 60; //Default 60 gün vade
                fatura.STK005_DovizCinsi                = item.ParaCinsi;
                fatura.STK005_Depo                      = item.Depo;
                fatura.STK005_RafKodu                   = item.Depo + "-A0";
                fatura.STK005_MaliyetMuhasebelesmeSekli = 1;
                fatura.STK005_Not5                      = "WMSOnay - " + item.KullaniciKodu; //Log amaçlı bilgi

                fatura.STK005_GirenKaynak      = "Y6018";
                fatura.STK005_GirenSurum       = "7.1.00";
                fatura.STK005_GirenKodu        = item.Kaydeden;
                fatura.STK005_GirenTarih       = DateTime.Today.Date.ToOADate().ToInt32();
                fatura.STK005_GirenSaat        = saat;
                fatura.STK005_DegistirenKaynak = "Y6018";
                fatura.STK005_DegistirenSurum  = "7.1.00";
                fatura.STK005_DegistirenKodu   = item.KullaniciKodu;
                fatura.STK005_DegistirenTarih  = DateTime.Today.Date.ToOADate().ToInt32();
                fatura.STK005_DegistirenSaat   = saat;

                fatura.Adres1    = item.Adres1;
                fatura.Adres2    = item.Adres2;
                fatura.Adres3    = item.Adres3;
                fatura.Aciklama1 = item.Aciklama1;
                fatura.Aciklama2 = item.Aciklama2;
                fatura.Aciklama3 = item.Aciklama3;

                FaturaSatirlari.Add(fatura);
            }

            foreach (var item in FaturaSatirlari)
            {
                SqlExper.Insert(item);
                var stk = new STK004
                {
                    pk_STK004_MalKodu      = item.STK005_MalKodu,
                    STK004_DegistirenKodu  = item.STK005_DegistirenKodu,
                    STK004_DegistirenSaat  = item.STK005_DegistirenSaat,
                    STK004_DegistirenTarih = item.STK005_DegistirenTarih
                };

                stk.SetAdd(STK004E.STK004_CikisMiktari, STK004E.STK004_CikisMiktari, SetIslem.Arti, item.STK005_Miktari.ToDot());
                stk.SetAdd(STK004E.STK004_CikisTutari, STK004E.STK004_CikisTutari, SetIslem.Arti, item.STK005_Tutari.ToDot());
                stk.STK004_SonCikisTarihi = item.STK005_DegistirenTarih;
                SqlExper.Update(stk);
            }

            foreach (var grupItem in FaturaSatirlari.GroupBy(x => x.STK005_CariHesapKodu))
            {
                var firstItem = grupItem.First();

                #region FTD INSERT

                var fMal = new CAR005();
                fMal.DefaultValueSet();
                fMal.CAR005_FaturaNo     = firstItem.STK005_EvrakSeriNo;
                fMal.CAR005_FaturaTarihi = firstItem.STK005_IslemTarihi;
                fMal.CAR005_CHKodu       = firstItem.STK005_CariHesapKodu;
                fMal.CAR005_TeslimCHKodu = firstItem.STK005_TeslimCHKodu;
                fMal.CAR005_ParaBirimi   = firstItem.STK005_ParaBirimi;
                fMal.CAR005_TeslimCHKodu = firstItem.STK005_TeslimCHKodu;
                fMal.CAR005_IptalDurumu  = firstItem.STK005_IptalDurumu;

                fMal.CAR005_SatirTipi = "G";
                fMal.CAR005_SatirNo   = 2;

                fMal.CAR005_Tutar      = grupItem.Sum(x => x.STK005_Tutari);
                fMal.CAR005_DovizCinsi = firstItem.STK005_DovizCinsi;

                fMal.CAR005_CariIslemTipi = 4;
                fMal.CAR005_Secenek       = 1;
                fMal.CAR005_BA            = "B";

                fMal.CAR005_TevkIslemTuru           = null;
                fMal.CAR005_EFaturaDurumu           = null;
                fMal.CAR005_EFaturaDonemBas         = null;
                fMal.CAR005_EFaturaDonemBit         = null;
                fMal.CAR005_EFaturaSure             = null;
                fMal.CAR005_EFaturaSureBirimi       = null;
                fMal.CAR005_TutarAlanDegeri         = null;
                fMal.CAR005_AliciSiparisTarihi      = null;
                fMal.CAR005_EArsivFaturaTipi        = null;
                fMal.CAR005_EArsivFaturaDurumu      = null;
                fMal.CAR005_EArsivFaturaTeslimSekli = null;

                SqlExper.Insert(fMal);

                short satirNo       = 3;
                var   fSevkAciklama = new CAR005();
                fSevkAciklama.Set(fMal);
                fSevkAciklama.CAR005_SatirTipi  = "A";
                fSevkAciklama.CAR005_Tutar      = 0;
                fSevkAciklama.CAR005_Oran       = 0;
                fSevkAciklama.CAR005_ParaBirimi = 0;
                fSevkAciklama.CAR005_DovizCinsi = "";
                fSevkAciklama.CAR005_Secenek    = 5;

                if (firstItem.Adres1.IsNotNullEmpty())
                {
                    fSevkAciklama.CAR005_SatirNo       = satirNo;
                    fSevkAciklama.CAR005_Filler        = firstItem.Adres1.Substring(0, 1);
                    fSevkAciklama.CAR005_SatirAciklama = firstItem.Adres1.Substring(1, firstItem.Adres1.Length - 1);
                    SqlExper.Insert(fSevkAciklama);
                    satirNo++;
                }

                if (firstItem.Adres2.IsNotNullEmpty())
                {
                    fSevkAciklama.CAR005_SatirNo       = satirNo;
                    fSevkAciklama.CAR005_Filler        = firstItem.Adres2.Substring(0, 1);
                    fSevkAciklama.CAR005_SatirAciklama = firstItem.Adres2.Substring(1, firstItem.Adres2.Length - 1);
                    SqlExper.Insert(fSevkAciklama);
                    satirNo++;
                }

                if (firstItem.Adres3.IsNotNullEmpty())
                {
                    fSevkAciklama.CAR005_SatirNo       = satirNo;
                    fSevkAciklama.CAR005_Filler        = firstItem.Adres3.Substring(0, 1);
                    fSevkAciklama.CAR005_SatirAciklama = firstItem.Adres3.Substring(1, firstItem.Adres3.Length - 1);
                    SqlExper.Insert(fSevkAciklama);
                    satirNo++;
                }

                if (firstItem.Aciklama1.IsNotNullEmpty())
                {
                    fSevkAciklama.CAR005_SatirNo       = satirNo;
                    fSevkAciklama.CAR005_Filler        = firstItem.Aciklama1.Substring(0, 1);
                    fSevkAciklama.CAR005_SatirAciklama = firstItem.Aciklama1.Substring(1, firstItem.Aciklama1.Length - 1);
                    SqlExper.Insert(fSevkAciklama);
                    satirNo++;
                }

                if (firstItem.Aciklama2.IsNotNullEmpty())
                {
                    fSevkAciklama.CAR005_SatirNo       = satirNo;
                    fSevkAciklama.CAR005_Filler        = firstItem.Aciklama2.Substring(0, 1);
                    fSevkAciklama.CAR005_SatirAciklama = firstItem.Aciklama2.Substring(1, firstItem.Aciklama2.Length - 1);
                    SqlExper.Insert(fSevkAciklama);
                    satirNo++;
                }

                if (firstItem.Aciklama3.IsNotNullEmpty())
                {
                    fSevkAciklama.CAR005_SatirNo       = satirNo;
                    fSevkAciklama.CAR005_Filler        = firstItem.Aciklama3.Substring(0, 1);
                    fSevkAciklama.CAR005_SatirAciklama = firstItem.Aciklama3.Substring(1, firstItem.Aciklama3.Length - 1);
                    SqlExper.Insert(fSevkAciklama);
                    satirNo++;
                }

                #endregion FTD INSERT

                #region CHI INSERT

                var siraNo = FaturaSatirlari[0].STK005_SEQNo.ToInt32();

                var chiMal = new CAR003();
                chiMal.DefaultValueSet();
                chiMal.CAR003_HesapKodu   = firstItem.STK005_CariHesapKodu;
                chiMal.CAR003_Tarih       = firstItem.STK005_IslemTarihi;
                chiMal.CAR003_EvrakSeriNo = firstItem.STK005_EvrakSeriNo;

                chiMal.CAR003_BA        = (byte)0;
                chiMal.CAR003_IslemTipi = 4;
                chiMal.CAR003_EvrakTipi = 11;

                chiMal.CAR003_Tutar            = grupItem.Sum(x => x.STK005_Tutari);
                chiMal.CAR003_KarsiEvrakSeriNo = firstItem.STK005_IadeFaturaNo;

                chiMal.CAR003_SEQNo              = siraNo;
                chiMal.CAR003_VadeTarihi         = firstItem.STK005_VadeTarihi;
                chiMal.CAR003_KDVOrani           = 4;
                chiMal.CAR003_ParaBirimi         = firstItem.STK005_ParaBirimi;
                chiMal.CAR003_IptalDurumu        = 1;
                chiMal.CAR003_AsilEvrakTarihi    = firstItem.STK005_AsilEvrakTarihi;
                chiMal.CAR003_MuhasebelesmeSekli = 1;
                chiMal.CAR003_Aciklama           = "Faturamız";
                chiMal.CAR003_EvrakSayisi        = 1;
                chiMal.CAR003_DovizCinsi         = firstItem.STK005_DovizCinsi;

                chiMal.CAR003_YevmiyeEvrakTip         = null;
                chiMal.CAR003_EFaturaDurumu           = null;
                chiMal.CAR003_EArsivFaturaTipi        = null;
                chiMal.CAR003_EArsivFaturaTeslimSekli = null;
                chiMal.CAR003_EArsivFaturaDurumu      = null;
                chiMal.CAR003_YOKCZRaporuNo           = null;
                chiMal.CAR003_YOKCBelgeTipi           = null;
                chiMal.CAR003_YOKCBilgiFisiTipi       = null;
                chiMal.CAR003_YOKCFisNo        = null;
                chiMal.CAR003_YOKCFisSaat      = null;
                chiMal.CAR003_YOKCDuzenlemeTip = null;

                chiMal.CAR003_GirenKaynak      = "AN001";
                chiMal.CAR003_GirenSurum       = "7.1.00";
                chiMal.CAR003_GirenKodu        = firstItem.STK005_DegistirenKodu;
                chiMal.CAR003_GirenTarih       = DateTime.Today.Date.ToOADate().ToInt32();
                chiMal.CAR003_GirenSaat        = saat;
                chiMal.CAR003_DegistirenKaynak = "AN001";
                chiMal.CAR003_DegistirenSurum  = "7.1.00";
                chiMal.CAR003_DegistirenKodu   = firstItem.STK005_DegistirenKodu;
                chiMal.CAR003_DegistirenTarih  = DateTime.Today.Date.ToOADate().ToInt32();
                chiMal.CAR003_DegistirenSaat   = saat;

                SqlExper.Insert(chiMal);

                #endregion CHI INSERT

                #region CHK UPDATE

                var chk = new CAR002
                {
                    pk_CAR002_HesapKodu = firstItem.STK005_CariHesapKodu
                };
                chk.SetAdd(CAR002E.CAR002_CiroBorc, CAR002E.CAR002_CiroBorc, SetIslem.Arti, chiMal.CAR003_Tutar.ToDot());
                chk.CAR002_SonBorcTarihi = firstItem.STK005_IslemTarihi;
                SqlExper.Update(chk);

                #endregion CHK UPDATE
            }

            SqlExper.AcceptChanges();
            return(new Result());
        }