private void btn_Kaydet_Click(object sender, EventArgs e) { try { if (!girisKontrol()) { MessageBox.Show("Henüz herhangi bir iade girişi yapmadınız", "HATA"); return; } if (!butunListeKontrol()) { MessageBox.Show("Siparişteki tüm malzemeleri okutmadınız.", "HATA"); return; } Cursor.Current = Cursors.WaitCursor; //Pozisitif webPost işlemi yapılıyor //....... string products = ""; string[] _arrProducts = new string[5]; int _siparisSayisi = webSipSayisi(); int _siparisIndeks = 0; string[] _siparisProducts = new string[_siparisSayisi]; //products stringi hazırlanıyor for (int i = 0; i < _siparis.Rows.Count; i++) { //matnr:kabulMiktar|degisimMiktar|iadeMiktar,.... if ((_siparis.Rows[i]["islemYapildi"].ToString() == "X") && (_siparis.Rows[i]["Kargo"].ToString().ToUpper() != "X")) { decimal toplamMiktar = Convert.ToDecimal(_siparis.Rows[i]["Menge"].ToString()); decimal kabulMiktar = Convert.ToDecimal(_siparis.Rows[i]["kabulMiktar"].ToString()); decimal degisimMiktar = Convert.ToDecimal(_siparis.Rows[i]["degisimMiktar"].ToString()); decimal iadeRedMiktari = toplamMiktar - (kabulMiktar + degisimMiktar); _siparisProducts[_siparisIndeks] = _siparis.Rows[i]["Webuid"].ToString() + ":" + kabulMiktar.ToString() + "|" + degisimMiktar.ToString() + "|" + iadeRedMiktari.ToString(); _siparisIndeks++; } } products = String.Join(",", _siparisProducts); _arrProducts = Utility.kargoOnerilenTutarGetir(_siparisId, _siparisNo, products); if (_arrProducts[3].ToString().Trim() != "") { _onerilenTutarKontrol = true; _onerilenTutarDegeri = Convert.ToDecimal(_arrProducts[3].ToString()); } else { Cursor.Current = Cursors.Default; return; } /* * _onerilenTutarKontrol = true; * _onerilenTutarDegeri = 1; */ //Webservice işlemleri WS_Islem.ZKT_WM_WS_ISLEMService srv = new KoctasWM_Project.WS_Islem.ZKT_WM_WS_ISLEMService(); WS_Islem.ZKtWmWsWebiadeKabul chk = new KoctasWM_Project.WS_Islem.ZKtWmWsWebiadeKabul(); WS_Islem.ZKtWmWsWebiadeKabulResponse resp = new KoctasWM_Project.WS_Islem.ZKtWmWsWebiadeKabulResponse(); //int islemSayisi = websiparisIslemSayisiGetir(); int islemSayisi = _webSip.Length; WS_Islem.ZktWmWebsid[] webSip = new KoctasWM_Project.WS_Islem.ZktWmWebsid[islemSayisi]; int islemSay = 0; for (int i = 0; i < _siparis.Rows.Count; i++) { if (_siparis.Rows[i]["islemYapildi"].ToString() == "X") { webSip[islemSay] = new KoctasWM_Project.WS_Islem.ZktWmWebsid(); webSip[islemSay].Aciklama = _siparis.Rows[i]["Aciklama"].ToString(); webSip[islemSay].Matnr = Convert.ToInt64(_siparis.Rows[i]["Matnr"].ToString()).ToString(); webSip[islemSay].Meins = _siparis.Rows[i]["Meins"].ToString(); webSip[islemSay].Menge = Convert.ToDecimal(_siparis.Rows[i]["Menge"].ToString()); webSip[islemSay].Kmenge = Convert.ToDecimal(_siparis.Rows[i]["kabulMiktar"].ToString()); webSip[islemSay].Dmenge = Convert.ToDecimal(_siparis.Rows[i]["degisimMiktar"].ToString()); webSip[islemSay].Vbelns = _siparis.Rows[i]["Vbelns"].ToString(); webSip[islemSay].Webklm = _siparis.Rows[i]["Webklm"].ToString(); webSip[islemSay].Websid = _siparis.Rows[i]["Websid"].ToString(); webSip[islemSay].Websip = _siparis.Rows[i]["Websip"].ToString(); webSip[islemSay].Kargo = _siparis.Rows[i]["Kargo"].ToString(); webSip[islemSay].Webuid = _siparis.Rows[i]["Webuid"].ToString(); webSip[islemSay].Webkrgt = 0; islemSay++; } } //_webSip ile gelen Kargo=X satırları işleniyor for (int i = 0; i < _webSip.Length; i++) { string _matnr = Convert.ToInt64(_webSip[i].Matnr.ToString()).ToString(); bool buldum = false; for (int j = 0; j < _siparis.Rows.Count; j++) { if (_matnr == _siparis.Rows[j]["Matnr"].ToString()) { //Eğer ilgili kayıt _siparis tablosunda işlenmiş ise buldum = true; break; } } //ilgili kayıt _siparis tablosunda bulunamaışsa if (!buldum) { //Gönderilecek siparişlere ekleniyor, kabul miktarı gelen miktar ile eşleştiriliyor webSip[islemSay] = new KoctasWM_Project.WS_Islem.ZktWmWebsid(); webSip[islemSay].Aciklama = _webSip[i].Aciklama.ToString(); webSip[islemSay].Matnr = Convert.ToInt64(_webSip[i].Matnr.ToString()).ToString(); webSip[islemSay].Meins = _webSip[i].Meins.ToString(); webSip[islemSay].Menge = _webSip[i].Menge; webSip[islemSay].Kmenge = _webSip[i].Menge; webSip[islemSay].Dmenge = 0; webSip[islemSay].Vbelns = _webSip[i].Vbelns.ToString(); webSip[islemSay].Webklm = _webSip[i].Webklm.ToString(); webSip[islemSay].Websid = _webSip[i].Websid.ToString(); webSip[islemSay].Websip = _webSip[i].Websip.ToString(); webSip[islemSay].Kargo = _webSip[i].Kargo.ToString(); webSip[islemSay].Webuid = _webSip[i].Webuid.ToString(); webSip[islemSay].Webkrgt = _onerilenTutarDegeri; islemSay++; } } chk.ItWebsid = webSip; //chk.LvWebkrgt = _onerilenTutarDegeri; WS_Islem.ZktWmStSarf[] _saf = new KoctasWM_Project.WS_Islem.ZktWmStSarf[1]; chk.EtSarf = _saf; srv.Credentials = GlobalData.globalCr; srv.Url = Utility.getWsUrlForWM("zkt_wm_ws_islem"); resp = srv.ZKtWmWsWebiadeKabul(chk); if (resp.EsResponse.Length > 0) { //Mesajlar düzenleniyor GlobalData.rMsg = new KoctasWM_Project.WS_Islem.ZktWmReturn[resp.EsResponse.Length]; GlobalData.rMsg = Utility.mesajDuzenle(resp.EsResponse); if (GlobalData.rMsg[0].Msgty.ToString().ToUpper() == "E") { MessageBox.Show(GlobalData.rMsg[0].Message.ToString(), "HATA"); Cursor.Current = Cursors.Default; return; } else if ((GlobalData.rMsg[0].Msgty.ToString().ToUpper() == "S") || (GlobalData.rMsg[0].Msgty.ToString().ToUpper() == "W") || (GlobalData.rMsg[0].Msgty.ToString().ToUpper() == "I")) { MessageBox.Show(GlobalData.rMsg[0].Message.ToString(), "BİLGİ"); Utility.moreMsgCheck(GlobalData.rMsg); //İade sonrası, Sarfa Gidecek Ürünler formu Cursor.Current = Cursors.Default; frm_32_1_Sarfa_Gonderilecek_Urunler frm = new frm_32_1_Sarfa_Gonderilecek_Urunler(); frm._stk = resp.EtSarf; frm._stokAdedi = resp.EtSarf.Length; if (frm.ShowDialog() == DialogResult.OK) { this.Close(); } } else { MessageBox.Show(GlobalData.rMsg[0].Message.ToString(), "BİLİNMEYEN DURUM"); Cursor.Current = Cursors.Default; return; } } else { MessageBox.Show("EsResponse dönüş değeri hatalı", "HATA"); } } catch (Exception ex) { MessageBox.Show(ex.Message, "HATA"); } finally { Cursor.Current = Cursors.Default; } }