void SatisFisiOlustur() { if (gridView3.SelectedRowsCount == 0) { return; } if (lueStoklar.EditValue == null) { return; } int hatali = 0, hatasiz = 0; string fkStokKarti = lueStoklar.EditValue.ToString(); string sql = ""; //local trans if (DB.conTrans == null) { DB.conTrans = new SqlConnection(DB.ConnectionString()); } if (DB.conTrans.State == ConnectionState.Closed) { DB.conTrans.Open(); } for (int i = 0; i < gridView3.SelectedRowsCount; i++) { #region transları başlat //DBWeb.transaction = DBWeb.conTrans.BeginTransaction("AdemTransaction"); DB.transaction = DB.conTrans.BeginTransaction("AidatTransaction"); #endregion string v = gridView3.GetSelectedRows().GetValue(i).ToString(); DataRow dr = gridView3.GetDataRow(int.Parse(v)); //DataRow dr = gridView3.GetDataRow(i); string fkFirma = dr["pkFirma"].ToString(); decimal aidat_tutari = 0; decimal.TryParse(dr["AidatTutari"].ToString(), out aidat_tutari); #region Fiş Oluştur ArrayList list = new ArrayList(); list.Add(new SqlParameter("@EskiFis", "0")); list.Add(new SqlParameter("@Tarih", TeslimTarihi.DateTime)); list.Add(new SqlParameter("@fkFirma", fkFirma));//fkFirma)); ana bilgisayardaki pkFirma=Firma_id list.Add(new SqlParameter("@Siparis", "1")); list.Add(new SqlParameter("@fkKullanici", DB.fkKullanicilar)); list.Add(new SqlParameter("@fkSatisDurumu", "2")); if (txtAciklama.Text == "") { list.Add(new SqlParameter("@Aciklama", DBNull.Value)); } else { list.Add(new SqlParameter("@Aciklama", txtAciklama.Text)); } list.Add(new SqlParameter("@OdenenKrediKarti", "0")); list.Add(new SqlParameter("@CekTutar", "0")); list.Add(new SqlParameter("@AlinanPara", "0")); list.Add(new SqlParameter("@ToplamTutar", aidat_tutari.ToString().Replace(",", "."))); list.Add(new SqlParameter("@Odenen", "0")); list.Add(new SqlParameter("@AcikHesap", aidat_tutari.ToString().Replace(",", "."))); list.Add(new SqlParameter("@OdemeSekli", "Açık Hesap")); list.Add(new SqlParameter("@GuncellemeTarihi", TeslimTarihi.DateTime)); list.Add(new SqlParameter("@fkSatisFiyatlariBaslik", "1")); list.Add(new SqlParameter("@BonusOdenen", "0")); list.Add(new SqlParameter("@OncekiBakiye", "0")); list.Add(new SqlParameter("@NakitOdenen", "0")); sql = "INSERT INTO Satislar (Tarih,fkFirma,Siparis,fkKullanici,fkSatisDurumu,Aciklama,OdemeSekli,fkSatisFiyatlariBaslik,ToplamTutar,Odenen,AcikHesap,EskiFis,AlinanPara,BilgisayarAdi,GuncellemeTarihi,OdenenKrediKarti,CekTutar,BonusOdenen,OncekiBakiye,NakitOdenen,aktarildi)" + " values(@Tarih,@fkFirma,@Siparis,@fkKullanici,@fkSatisDurumu,@Aciklama,@OdemeSekli,@fkSatisFiyatlariBaslik,@ToplamTutar,@Odenen,@AcikHesap,@EskiFis,@AlinanPara,'Aktarım',@GuncellemeTarihi,@OdenenKrediKarti,@CekTutar,@BonusOdenen,@OncekiBakiye,@NakitOdenen,1) select IDENT_CURRENT('Satislar')"; bool islembasarili = true; string yeni_pkSatislar = DB.ExecuteScalarSQLTrans(sql, list); if (yeni_pkSatislar.Substring(0, 1) == "H") { islembasarili = false; //listBoxControl1.Items.Add("Satislar Hata Fiş No: " + pkSatislar + " Hata:" + yeni_pkSatislar); } #endregion #region islembasarili ise Satış Detayları aktar if (islembasarili) { ArrayList list2 = new ArrayList(); list2.Add(new SqlParameter("@fkSatislar", yeni_pkSatislar)); list2.Add(new SqlParameter("@fkStokKarti", fkStokKarti)); //fkStokKarti));//ana pc deki stokkarti id =pkStokKarti list2.Add(new SqlParameter("@Tarih", TeslimTarihi.DateTime)); list2.Add(new SqlParameter("@Adet", "1")); list2.Add(new SqlParameter("@AlisFiyati", "0")); list2.Add(new SqlParameter("@SatisFiyati", aidat_tutari.ToString().Replace(",", "."))); list2.Add(new SqlParameter("@NakitFiyat", aidat_tutari.ToString().Replace(",", "."))); list2.Add(new SqlParameter("@iade", "0")); list2.Add(new SqlParameter("@KdvOrani", "0")); //if (iskontotutar == "") iskontotutar = "0"; list2.Add(new SqlParameter("@iskontotutar", "0")); //if (iskontoyuzdetutar == "") iskontoyuzdetutar = "0"; list2.Add(new SqlParameter("@iskontoyuzdetutar", "0")); sql = "INSERT INTO SatisDetay (fkSatislar,fkStokKarti,Tarih,Adet,AlisFiyati,SatisFiyati,NakitFiyat,iade,KdvOrani,iskontotutar,iskontoyuzdetutar,Faturaiskonto,isKdvHaric,GercekAdet) " + " values(@fkSatislar,@fkStokKarti,@Tarih,@adet,@AlisFiyati,@SatisFiyati,@NakitFiyat,@iade,@KdvOrani,@iskontotutar,@iskontoyuzdetutar,0,0,1)"; string sonuc = DB.ExecuteSQLTrans(sql, list2); if (sonuc.Substring(0, 1) == "H") { islembasarili = false; //listBoxControl1.Items.Add("SatisDetay Hata Fiş No: " + pkSatislar + " Hata:" + sonuc); //break;//ikinci döngünün içinden çıkması için islembasarili sonraki döngü hatasız ise hatalı olan aktarılmamış olur. } //} } #endregion #region Taksitler //private void TaksitlereBol() //{ #region Taksit ekle //taksit başlık bilgisi //if (taksit_id.Text == "0") //{ ArrayList listt = new ArrayList(); listt.Add(new SqlParameter("@fkFirma", fkFirma)); listt.Add(new SqlParameter("@aciklama", txtAciklama.Text)); listt.Add(new SqlParameter("@kefil", "")); listt.Add(new SqlParameter("@mahkeme", "")); listt.Add(new SqlParameter("@fkSatislar", yeni_pkSatislar)); listt.Add(new SqlParameter("@fkKullanici", DB.fkKullanicilar)); sql = @"insert into Taksit(fkFirma,tarih,aciklama,kefil,mahkeme,fkSatislar,fkKullanici) values(@fkFirma,getdate(),@aciklama,@kefil,@mahkeme,@fkSatislar,@fkKullanici) SELECT IDENT_CURRENT('Taksit')"; string taksit_id = DB.ExecuteScalarSQLTrans(sql, listt); //taksit_id.Text = sonuc; //} #endregion //decimal ToplamOdenen = 0; //DateTime HesabaGecisTarih = TilkTaksitTarihi.DateTime; //DateTime gruplandir = DateTime.Now; //for (int i = 0; i < TAdet.Value; i++) { ArrayList list2 = new ArrayList(); //list.Add(new SqlParameter("@fkFirma", teMusteri.Tag.ToString())); list2.Add(new SqlParameter("@Tarih", TeslimTarihi.DateTime)); //if (checkEdit1.Checked && i == TAdet.Value - 1) //{ //list.Add(new SqlParameter("@Odenecek", (ToplamTutar.Value - ToplamOdenen).ToString().Replace(",", "."))); //} //else list2.Add(new SqlParameter("@Odenecek", aidat_tutari.ToString().Replace(",", "."))); list2.Add(new SqlParameter("@Odenen", "0")); list2.Add(new SqlParameter("@SiraNo", (i + 1).ToString())); list2.Add(new SqlParameter("@HesabaGecisTarih", TeslimTarihi.DateTime)); list2.Add(new SqlParameter("@taksit_id", taksit_id)); DB.ExecuteSQLTrans(" INSERT INTO Taksitler (Tarih,Odenecek,Odenen,SiraNo,HesabaGecisTarih,OdemeSekli,Kaydet,taksit_id)" + " VALUES(@Tarih,@Odenecek,@Odenen,@SiraNo,@HesabaGecisTarih,'Taksit (Senet)',0,@taksit_id)", list2); //HesabaGecisTarih = HesabaGecisTarih.AddMonths(1); //ToplamOdenen = ToplamOdenen + ceTaksitTutari.Value; } //Taksitler(); //taksit_id.Text = "0"; //} #endregion #region trans. işlemi if (islembasarili) { //local sunucu DB.transaction.Commit(); hatasiz++; //listBoxControl1.Items.Add("Fiş No: " + pkSatislar + " Başarılı" ); } else { //locak sunucuyu kapat //if (DB.conTrans != null && DB.conTrans.State == ConnectionState.Open) DB.transaction.Rollback(); hatali++; //listBoxControl1.Items.Add("Hatalı Fiş No: " + pkSatislar + " Hatalı"); } #endregion } DB.conTrans.Close(); //formislemleri.Mesajform(say.ToString() + " Adet Aidat Fişi Oluşturuldu", "S", 200); MusteriGetir(); }
private void simpleButton3_Click(object sender, EventArgs e) { DataTable dt = DB.GetData("SELECT * FROM Envanter with(nolock) where convert(varchar(10),Donem,112)='" + ilkdate.DateTime.ToString("yyyyMMdd") + "'"); if (dt.Rows.Count > 0) { MessageBox.Show("Daha Önce " + ilkdate.DateTime.ToString("dd.MM.yyyy") + " Olarak Kaydedildi. \r Lütfen Başka Bir Dönem Seçiniz!"); ilkdate.Focus(); return; } try { if (DB.conTrans == null) { DB.conTrans = new SqlConnection(DB.ConnectionString()); //DB.conTrans.Open(); //transaction = conTrans.BeginTransaction("AdemTransaction"); } if (DB.conTrans.State == ConnectionState.Closed) { //DB.conTrans = new SqlConnection(DB.ConnectionString()); DB.conTrans.Open(); //transaction = conTrans.BeginTransaction("AdemTransaction"); } //DB.conTrans.BeginTransaction(); DB.transaction = DB.conTrans.BeginTransaction("AdemTransaction"); string yeni_id = DB.ExecuteScalarSQLTrans("INSERT INTO Envanter (Donem,Tarih,Aciklama) values('" + ilkdate.DateTime.ToString("yyyy-MM-dd") + "',getdate(),'" + tEaciklama.Text + "') select IDENT_CURRENT('Envanter');"); int hatali = 0, say = 0; frmYukleniyor yukleniyor = new frmYukleniyor(); yukleniyor.labelControl1.Text = "Envanter Oluşturuluyor Lütfen Bekleyiniz..."; yukleniyor.TopMost = true; yukleniyor.Show(); for (int i = 0; i < gridView1.DataRowCount; i++) { DataRow dr = gridView1.GetDataRow(i); //TODO:trans kullanılacak ArrayList list = new ArrayList(); list.Add(new SqlParameter("@fkEnvanter", yeni_id)); list.Add(new SqlParameter("@fkStokKarti", dr["pkStokKarti"].ToString().Replace(",", "."))); list.Add(new SqlParameter("@Adet", dr["Mevcut"].ToString().Replace(",", "."))); list.Add(new SqlParameter("@AlisFiyati", dr["AlisiskEnvanter"].ToString().Replace(",", "."))); list.Add(new SqlParameter("@SatisFiyati", dr["SatisiskEnvanter"].ToString().Replace(",", "."))); string sonuc = DB.ExecuteSQLTrans(@"INSERT INTO EnvanterDetay (fkEnvanter,fkStokKarti,Adet,AlisFiyati,SatisFiyati) values(@fkEnvanter,@fkStokKarti,@Adet,@AlisFiyati,@SatisFiyati)", list); if (sonuc == "-1") { hatali++; } else { say++; } } yukleniyor.Close(); if (hatali == 0) { MessageBox.Show("Envanter Kaydedildi"); } else { MessageBox.Show(hatali.ToString() + " hatalı"); } } catch (Exception exp) { try { DB.transaction.Rollback(); } catch (Exception ex2) { DB.conTrans.Close(); MessageBox.Show("Rollback Exception Type: {0}", ex2.GetType().ToString()); MessageBox.Show(" Message: {0}", ex2.Message); } //DB.conTrans.Close(); //return; } finally { DB.transaction.Commit(); //DB.conTrans.Close(); } DB.conTrans.Close(); }