private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            SqlConnections sqlll = new SqlConnections();

            Trgenel = SqlConnections.GetBaglanti().BeginTransaction();
            Arama.StokListeGetir(SqlConnections.GetBaglanti(), Trgenel);
            Trgenel.Commit();
            //gcStokListesi.ItemsSource = Arama.dt_StokListesi;
        }
        private void frmXmlUrunAktarimi_Load(object sender, EventArgs e)
        {
            Trgenel             = SqlConnections.GetBaglanti().BeginTransaction();
            EntegrasyonUrunlari = new clsTablolar.Stok.csStokArama();
            EntegrasyonUrunlari.EMagazaErisimi = 1;

            EntegrasyonUrunlari.StokListeGetir(SqlConnections.GetBaglanti(), Trgenel);
            gridControl1.DataSource = EntegrasyonUrunlari.dt_StokListesi;

            Trgenel.Commit();
        }
        private void simpleButton_Click(object sender, RoutedEventArgs e)
        {
            Arama.Barkod = txtBarkod.Text;
            Trgenel      = SqlConnections.GetBaglanti().BeginTransaction();
            Arama.StokListeGetir(SqlConnections.GetBaglanti(), Trgenel);
            Trgenel.Commit();
            //gcStokListesi.ItemsSource = Arama.dt_StokListesi;
            gcfalanfilan.ItemsSource = Arama.dt_StokListesi;

            clsTablolar.TeraziSatisClaslari.csBarkodtanStokArama bArama = new clsTablolar.TeraziSatisClaslari.csBarkodtanStokArama();
            bArama.StokBarkodundanStokIDVer(SqlConnections.GetBaglanti(), Trgenel, txtBarkod.Text);
        }
        void StokveFotoYukle()
        {
            TrGenel   = SqlConnections.GetBaglanti().BeginTransaction();
            StokArama = new clsTablolar.Stok.csStokArama();

            StokArama.EMagazaErisimi = 1;
            DataTable      dt = new DataTable();
            SqlDataAdapter da = new SqlDataAdapter(@"select stok.stokID, stok.StokKodu, StokAdi ,StokResim.Ftp from stok
left join StokResim on StokResim.StokID = Stok.stokID
where stok.Silindi = 0 and stok.EMagazaErisimi = 1", SqlConnections.GetBaglanti());

            da.SelectCommand.Transaction = TrGenel;
            da.Fill(dt);

            StokArama.StokListeGetir(SqlConnections.GetBaglanti(), TrGenel);
        }
        private void btnButunN11StoklariniGetir_Click(object sender, EventArgs e)
        {
            using (clsTablolar.Stok.csStokArama stkArama = new clsTablolar.Stok.csStokArama())
            {
                stkArama.N11Entegrasyonu = clsTablolar.Stok.csStokArama.n11entegrasyon.Olan;

                stkArama.Aktif = true;
                TrGenel        = SqlConnections.GetBaglanti().BeginTransaction();
                using (DataTable dt = stkArama.StokListeGetir(SqlConnections.GetBaglanti(), TrGenel))
                {
                    TrGenel.Commit();
                    foreach (var item in dt.AsEnumerable())
                    {
                        stokEkle((int)item["StokID"], 0);
                    }
                }
            }
        }
        private void btnFiltrele_Click(object sender, EventArgs e)
        {
            try
            {
                StokArama.FotoOzellikleri = (clsTablolar.Stok.csStokArama.enumFotoOzellikleri)Convert.ToInt32(lookUpEdit1.EditValue);

                // buraları biraz karışık açıklama lazım
                // stok arama yalada oldukça alakalı

                StokArama.StokFiyatTanimAdlari = "";
                StokArama.StokFiyatTanimIDleri = "";


                for (int i = 0, b = 0; i < checkedListBox_FiyatTanimlari.ItemCount; i++)
                {
                    if (checkedListBox_FiyatTanimlari.GetItemChecked(i) == true)
                    {
                        if (b > 0) // virgülü koyma ile alaklı bişi sanırım
                        {
                            StokArama.StokFiyatTanimAdlari += " ," + checkedListBox_FiyatTanimlari.GetDisplayItemValue(i);
                            StokArama.StokFiyatTanimIDleri += " ," + checkedListBox_FiyatTanimlari.GetItemValue(i);
                        }
                        else
                        {
                            StokArama.StokFiyatTanimAdlari += checkedListBox_FiyatTanimlari.GetDisplayItemValue(i);
                            StokArama.StokFiyatTanimIDleri += checkedListBox_FiyatTanimlari.GetItemValue(i);
                        }
                        b++;
                    }
                }

                switch (cmbN11.SelectedIndex)
                {
                case 0:
                    StokArama.N11Entegrasyonu = clsTablolar.Stok.csStokArama.n11entegrasyon.Hepsi;
                    break;

                case 1:
                    StokArama.N11Entegrasyonu = clsTablolar.Stok.csStokArama.n11entegrasyon.Olan;
                    break;

                case 2:
                    StokArama.N11Entegrasyonu = clsTablolar.Stok.csStokArama.n11entegrasyon.Olmayan;
                    break;

                default:
                    break;
                }


                //= StokArama.dt_StokListesi;

                if (cedit_FotoKatolog.Checked)
                {
                    gcStokListesi.MainView = layoutView1;
                    //layoutView1.OptionsView.ViewMode = DevExpress.XtraGrid.Views.Layout.LayoutViewMode.MultiColumn;
                    StokArama.TumFotograflariYukle = true;
                    //layoutView1.Columns["StokAdi"].SortOrder = DevExpress.Data.ColumnSortOrder.Ascending;
                    lvcolStokAdi.SortOrder = DevExpress.Data.ColumnSortOrder.Ascending;
                    //lvcolStokID.SortOrder = DevExpress.Data.ColumnSortOrder.Ascending;
                    layoutView1.OptionsMultiRecordMode.MultiColumnScrollBarOrientation = DevExpress.XtraGrid.Views.Layout.ScrollBarOrientation.Vertical;
                }
                else
                {
                    gcStokListesi.MainView         = gvStokListesi;
                    StokArama.TumFotograflariYukle = false;
                }

                if (ucStokGruplari1.AhandaBuradakiler != null && ucStokGruplari1.AhandaBuradakiler.Count != 0)
                {
                    StokArama.SeciliGruplar = ucStokGruplari1.AhandaBuradakiler.ToArray();

                    //StokArama.SeciliGruplar =
                }
                else
                {
                    StokArama.SeciliGruplar = null;
                }



                gvStokListesi.Columns.Clear();
                //layoutView1.Columns.Clear();
                trGenel = SqlConnections.GetBaglanti().BeginTransaction();
                gcStokListesi.DataSource = StokArama.StokListeGetir(SqlConnections.GetBaglanti(), trGenel);
                trGenel.Commit();


                if (cedit_FotoKatolog.Checked == false)
                {
                    GridArayuzIslemleri(enGridArayuzIslemleri.Get);
                }

                MiktarliBarkod = txtBarkodu.Text; // bunu neden buna eşitlemiştik

                KacSatirVar();
            }
            catch (Exception hata)
            {
                try { trGenel.Rollback(); } catch (Exception) { }

                frmHataBildir frmHataBildir = new frmHataBildir(hata.Message, hata.StackTrace);
                frmHataBildir.ShowDialog();
            }
        }
        void ExceldenAktarV2() //Excelden alınan bilgileri dt_Alanayarları (yani hangi alan exceldeki hangi kolonda ise) na göre aktarılır.
        {
            for (int i = 0; i < exceldenal.dt_Excel.Rows.Count; i++)
            {
                Stokarama = new clsTablolar.Stok.csStokArama();

                if (cmbStokKarsilastirmaAlani.Text == "Barkodu")
                {
                    Stokarama.Barkod = exceldenal.dt_Excel.Rows[i][dt_AlanAyarlari.Rows[2]["ExcelSutunu"].ToString()].ToString();
                    Stokarama.StokListeGetir(SqlConnections.GetBaglanti(), Trgenel);
                    if (Stokarama.dt_StokListesi.Rows.Count > 0)
                    {
                        StokEkleme = new clsTablolar.Stok.csStok(SqlConnections.GetBaglanti(), Trgenel, Convert.ToInt32(Stokarama.dt_StokListesi.Rows[0]["StokID"]));
                    }
                    else
                    {
                        StokEkleme = new clsTablolar.Stok.csStok(SqlConnections.GetBaglanti(), Trgenel, -1);
                    }
                }

                if ((bool)dt_AlanAyarlari.Rows[0]["Aktar"] == true)                                                                  // stok kodu için Aktar seçilmişse
                {
                    StokEkleme.StokKodu = exceldenal.dt_Excel.Rows[i][dt_AlanAyarlari.Rows[0]["ExcelSutunu"].ToString()].ToString(); // kolon adını alan ayarlarında alıyor. O ıncı satır stok kodunun hanki alanda olduğunu söyleyen satır
                }
                if ((bool)dt_AlanAyarlari.Rows[1]["Aktar"] == true)                                                                  // stok Adi için Aktar seçilmişse
                {
                    StokEkleme.StokAdi = exceldenal.dt_Excel.Rows[i][dt_AlanAyarlari.Rows[1]["ExcelSutunu"].ToString()].ToString();  // kolon adını alan ayarlarında alıyor. O ıncı satır stok kodunun hanki alanda olduğunu söyleyen satır
                }
                if ((bool)dt_AlanAyarlari.Rows[2]["Aktar"] == true)                                                                  // Barkod için Aktar seçilmişse
                {
                    StokEkleme.Barkod = exceldenal.dt_Excel.Rows[i][dt_AlanAyarlari.Rows[2]["ExcelSutunu"].ToString()].ToString();   // kolon adını alan ayarlarında alıyor. O ıncı satır stok kodunun hanki alanda olduğunu söyleyen satır
                }
                if ((bool)dt_AlanAyarlari.Rows[3]["Aktar"] == true)                                                                  //  Aciklama için Aktar seçilmişse
                {
                    StokEkleme.Aciklama = exceldenal.dt_Excel.Rows[i][dt_AlanAyarlari.Rows[3]["ExcelSutunu"].ToString()].ToString(); // kolon adını alan ayarlarında alıyor. O ıncı satır stok kodunun hanki alanda olduğunu söyleyen satır
                }
                if ((bool)dt_AlanAyarlari.Rows[4]["Aktar"] == true)                                                                  //  OzelKod1 için Aktar seçilmişse
                {
                    StokEkleme.OzelKod1 = exceldenal.dt_Excel.Rows[i][dt_AlanAyarlari.Rows[4]["ExcelSutunu"].ToString()].ToString(); // kolon adını alan ayarlarında alıyor. O ıncı satır stok kodunun hanki alanda olduğunu söyleyen satır
                }
                if ((bool)dt_AlanAyarlari.Rows[5]["Aktar"] == true)                                                                  //  OzelKod2 için Aktar seçilmişse
                {
                    StokEkleme.OzelKod2 = exceldenal.dt_Excel.Rows[i][dt_AlanAyarlari.Rows[5]["ExcelSutunu"].ToString()].ToString(); // kolon adını alan ayarlarında alıyor. O ıncı satır stok kodunun hanki alanda olduğunu söyleyen satır
                }
                if ((bool)dt_AlanAyarlari.Rows[6]["Aktar"] == true)                                                                  //  OzelKod3 için Aktar seçilmişse
                {
                    StokEkleme.OzelKod3 = exceldenal.dt_Excel.Rows[i][dt_AlanAyarlari.Rows[6]["ExcelSutunu"].ToString()].ToString(); // kolon adını alan ayarlarında alıyor. O ıncı satır stok kodunun hanki alanda olduğunu söyleyen satır
                }
                if ((bool)dt_AlanAyarlari.Rows[7]["Aktar"] == true)                                                                  //  Grubu için Aktar seçilmişse
                {
                    string GrupAdi = exceldenal.dt_Excel.Rows[i][dt_AlanAyarlari.Rows[7]["ExcelSutunu"].ToString()].ToString();
                    StokEkleme.StokAltGrupID = GrubAdi.GrubAdiverIDAl(SqlConnections.GetBaglanti(), Trgenel, GrupAdi);// kolon adını alan ayarlarında alıyor. O ıncı satır stok kodunun hanki alanda olduğunu söyleyen satır
                }

                if (StokEkleme.StokID == -1)
                {
                    clsTablolar.csNumaraVer stokkoduVer = new csNumaraVer();
                    StokEkleme.StokKodu = stokkoduVer.VarsayilanNumaraVer_ve_Kaydet(SqlConnections.GetBaglanti(), Trgenel, IslemTipi.StokKarti);
                }

                StokEkleme.StokGuncelle(SqlConnections.GetBaglanti(), Trgenel);

                StokFiyatlari.SatisFiyatiGetir(SqlConnections.GetBaglanti(), Trgenel, StokEkleme.StokID);
                StokFiyatlari.AlisFiyatiGetir(SqlConnections.GetBaglanti(), Trgenel, StokEkleme.StokID);

                for (int y = 8; y < dt_AlanAyarlari.Rows.Count; y++)
                {
                    if ((bool)dt_AlanAyarlari.Rows[y]["Aktar"] == true)                                                                                        //  fiyat tanımları
                    {
                        if (StokFiyatlari.dt_SatisFiyati.Select("FiyatTanimID = " + gvAktarilacaklarListesi.GetRowCellValue(y, "tag").ToString()).Length == 1) // stok a o fiyat tanımı daha önceden eklenmişse
                        {
                            StokFiyatlari.dt_SatisFiyati.Select("FiyatTanimID = " + gvAktarilacaklarListesi.GetRowCellValue(y, "tag").ToString())[0]["Fiyat"] = exceldenal.dt_Excel.Rows[i][dt_AlanAyarlari.Rows[y]["ExcelSutunu"].ToString()].ToString();
                        }
                        else
                        {
                            StokFiyatlari.dt_SatisFiyati.Rows.Add(StokFiyatlari.dt_SatisFiyati.NewRow());
                            StokFiyatlari.dt_SatisFiyati.Rows[StokFiyatlari.dt_SatisFiyati.Rows.Count - 1]["Fiyat"]        = Convert.ToDecimal(exceldenal.dt_Excel.Rows[i][dt_AlanAyarlari.Rows[y]["ExcelSutunu"].ToString()]);;
                            StokFiyatlari.dt_SatisFiyati.Rows[StokFiyatlari.dt_SatisFiyati.Rows.Count - 1]["FiyatTanimID"] = dt_AlanAyarlari.Rows[y]["tag"];
                        }
                    }
                }
                StokFiyatlari.StokFiyatGuncelle(SqlConnections.GetBaglanti(), Trgenel, StokEkleme.StokID);
            }
        }