Tüm Platformlar için Hızlı Uygulama Geliştirme Kitabı... Delphi
Ön Sipariş Talebinde Bulunan Üyelerimiz
Sipariş Talebinde Bulunan Üyelerimiz

Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 2/5 - 2 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Hal Kayıt Sistemi Web Servis
#21
(01-12-2017, Saat: 14:43)ismailkocacan Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
(01-12-2017, Saat: 13:57)eyln Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlDelphi ile oluşturdum. C# 'a çok hakim değilim...
XML'i text olarak oluşturup idhhtp ile post ettim bad request hatası aldım bu defada...
Peki Delphi'den istek XML'i namespace'li olarak mı gönderdiniz ?

Sizin gönderdiğiniz XML'i text olarak procedure içerisinde değişkene atadım ve post ettim.

Diğer taraftan Delphi içinden name spaceli olarak nasıl gönderileceği konusunda bilginiz varmı?
Cevapla
#22
(01-12-2017, Saat: 15:46)eyln Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
(01-12-2017, Saat: 14:43)ismailkocacan Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlPeki Delphi'den istek XML'i namespace'li olarak mı gönderdiniz ?

Sizin gönderdiğiniz XML'i text olarak procedure içerisinde değişkene atadım ve post ettim.

Diğer taraftan Delphi içinden name spaceli olarak nasıl gönderileceği konusunda bilginiz varmı?

Araştırmak lazım. XML'leri farklı gördüğüm için, namespace dedim.Problem namespace de olmayabilir.Ama servisin düzgün çalıştığı aşikar.
WWW
Cevapla
#23
Merhaba Arkadaşlar,
Sorunu çözemedim.Bu isteği HTTP post ile yapmak mümkün mü? Teşekkürler.
Cevapla
#24
Merhaba, 
WSDL den oluşan pas dosyasını biraz değiştirmem gerekti. Ayrıca kodların ile de biraz oynadım. Elimde kullanıcı adı şifre bilgileri olmadığı için tam bir test alamadım. 


Pas dosyasını Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol indirebilirsin.

var
gonder : BaseRequestMessageOf_ListOf_BildirimKayitIstek;
cevap  : BaseResponseMessageOf_ListOf_BildirimKayitCevap;
istk   : BildirimKayitIstek2;
begin
try
screen.Cursor := crHourGlass;

gonder       :=   BaseRequestMessageOf_ListOf_BildirimKayitIstek.Create;

istk := BildirimKayitIstek.Create;

gonder.UserName := 'username';
gonder.Password := 'passs';
gonder.ServicePassword := '_webpass' ;


istk.UniqueId :='****-6**56';
istk.BildirimTuru :=206;
istk.ReferansBildirimKunyeNo :=0;

istk.BildirimciBilgileri := BildirimciBilgileriDTO2.Create;
istk.BildirimciBilgileri.KisiSifat :=6; //Tüccar hal içi


istk.IkinciKisiBilgileri := IkinciKisiBilgileriDTO2.Create;
istk.IkinciKisiBilgileri.CepTel := '*******';  //+
istk.IkinciKisiBilgileri.Eposta := ' ';  //+
istk.IkinciKisiBilgileri.TcKimlikVergiNo := '*******'; //+
istk.IkinciKisiBilgileri.YurtDisiMi := false; //+
istk.IkinciKisiBilgileri.KisiSifat := 4; //+
istk.IkinciKisiBilgileri.AdSoyad := '**** *****'; //+

istk.BildirimMalBilgileri :=  BildirimMalBilgileriDTO.Create;
istk.BildirimMalBilgileri.UretimIlId:= 15;
istk.BildirimMalBilgileri.UretimIlceId:= 855;
istk.BildirimMalBilgileri.UretimBeldeId:= 785;
istk.BildirimMalBilgileri.MalinNiteligi:= 1;
istk.BildirimMalBilgileri.MalinKodNo:= 319 ;
istk.BildirimMalBilgileri.UretimSekli:= 28;
istk.BildirimMalBilgileri.MalinCinsiId:= 1265;
istk.BildirimMalBilgileri.MiktarBirimId:= 74;
istk.BildirimMalBilgileri.MalinMiktari:= 250;
istk.BildirimMalBilgileri.MalinSatisFiyat:= 0.50;
istk.BildirimMalBilgileri.GelenUlkeId:= 0;
istk.BildirimMalBilgileri.AnalizeGonderilecekMi:=false;


istk.MalinGidecekYerBilgileri :=  MalinGidecekYerBilgileriDTO2.Create;
istk.MalinGidecekYerBilgileri.GidecekYerIsletmeTuruId:=7;// hal içi işyeri
istk.MalinGidecekYerBilgileri.GidecekIsyeriId:=47477;
istk.MalinGidecekYerBilgileri.GidecekUlkeId:=0;
istk.MalinGidecekYerBilgileri.GidecekYerIlId:=70;
istk.MalinGidecekYerBilgileri.GidecekYerIlceId:=78;
istk.MalinGidecekYerBilgileri.GidecekYerBeldeId:=45794;
istk.MalinGidecekYerBilgileri.BelgeNo:='F0002';
istk.MalinGidecekYerBilgileri.BelgeTipi:=208;
istk.MalinGidecekYerBilgileri.AracPlakaNo:='******';


gonder.Istek := ArrayOfBildirimKayitIstek2.Create;
gonder.Istek.SetBildirimKayitIstek2ArrayLength(1);
gonder.Istek.SetBildirimKayitIstek2Array(0, istk);

cevap  := GetIBildirimService().BildirimServisBildirimKaydet(gonder) ;


 if cevap.Sonuc.Len > 0 then
 begin
  ShowMessage( cevap.Sonuc[0].YeniKunyeNo.ToString );
 end
 else
 begin
  ShowMessage('İŞLEM KODU : ' + cevap.IslemKodu + sLineBreak +
             'HATA MESAJI : ' + cevap.HataKodlari[0].Mesaj + sLineBreak +
             'HATA KODU : ' + cevap.HataKodlari[0].HataKodu.ToString
            );
 end;


finally
 Screen.Cursor := crDefault;
END;


Amatör Küme Bilgisayar Programcısı
WWW
Cevapla
#25
Ali bey ilginiz için teşekkürler.Denedim ancak aynı hatayı aldım ayrıca fiddlerden baktığımda xml hiç oluşmamış görünüyor.
Cevapla
#26
(05-12-2017, Saat: 20:33)eyln Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlAli bey ilginiz için teşekkürler.Denedim ancak aynı hatayı aldım ayrıca fiddlerden baktığımda xml hiç oluşmamış görünüyor.

Merhaba, 
Sanırım pas dosyasını kaydetmeden klasörden kopyaladım. Aşağıda ki linkten proje olarak indirebilirsiniz. Fiddler oturum kaydı (.saz) dosyası da rar içerisinde.

Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol


LOWazj.png
Amatör Küme Bilgisayar Programcısı
WWW
Cevapla
#27
Ali Bey ,

Çok teşekkür ederim.Çok sıkıntı çektiğim bir konuyu sayenizde çözmüş oldum.PAS dosyasındanki değişiklikler hakkında bilgi vermeniz mümkünmü
zira bu test sisteminden import ettiğim dosyaydı.Aynı değişiklikleri canlı sistemden import edeceğim dosyadada yapmam gerekecek.

Elinize sağlık...
Cevapla
#28
(05-12-2017, Saat: 22:03)eyln Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlAli Bey ,

Çok teşekkür ederim.Çok sıkıntı çektiğim bir konuyu sayenizde çözmüş oldum.PAS dosyasındanki değişiklikler hakkında bilgi vermeniz mümkünmü
zira bu test sisteminden import ettiğim dosyaydı.Aynı değişiklikleri canlı sistemden import edeceğim dosyadada yapmam gerekecek.

Elinize sağlık...


Merhaba,

WebServisi import ederken parametreler ekranında aşağıda ki ekran görüntüsünde sarı ile işaretlediğim kısmın TİKLİ olması gerekiyor. 
Access Violation ve Object Reference not set to an Instance of an Object hataları almamak için Nesneleri Create ettiğinizden ve Dizilerin uzunluğunu belirtirken setLength yerine webservisin içinde bulunan kendi methodunu kullandığınızdan emin olun.. 

Örnek olarak
gonder.Istek := ArrayOfBildirimKayitIstek2.Create; // Create ettik.
gonder.Istek.SetBildirimKayitIstek2ArrayLength(1); // Dizinin uzunluğunu kendi methodunu kullanarak verdik.
gonder.Istek.SetBildirimKayitIstek2Array(0, istk); // Diziyi yine kendi methodu ile doldurduk. 
 



6yLkD9.png
Amatör Küme Bilgisayar Programcısı
WWW
Cevapla
#29
Ali bey ,Tekrar teşekkürler.Çok ince bir detay ancak bilgi ve tecrübe ile çözülebilirdi. İmport ederken o seçeneklere hiç bakmadım bile.
Elinize sağlık.
Cevapla
#30
(05-12-2017, Saat: 22:32)eyln Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlAli bey ,Tekrar teşekkürler.Çok ince bir detay ancak bilgi ve tecrübe ile çözülebilirdi. İmport ederken o seçeneklere hiç bakmadım bile.
Elinize sağlık.

Merhaba,
Bahsetmiş olduğunuz bu bilgi ve beceriye +4 puanla ekstra katkıda bulunabilirsiniz.
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  delphi ile web servis yazmak. Kamuran Alpkaya 5 1.380 Dün, Saat: 17:13
Son Yorum: enes6635
  soap uygulamaları kayıt çekme goabdullah 6 1.026 04-11-2018, Saat: 22:01
Son Yorum: enes6635
  Radiobutton ve Checkbox Kayıt İşlemleri - Yardım djharry 3 140 03-10-2018, Saat: 10:58
Son Yorum: Abdullah ILGAZ
  Web Servis Access Violation ahmet_sinav 6 253 25-09-2018, Saat: 15:48
Son Yorum: ahmet_sinav
  Rest Web Servis Cookie Sıkıntısı Hk. satiuqea 7 280 31-08-2018, Saat: 17:36
Son Yorum: SimaWB



Konuyu Okuyanlar: 1 Ziyaretçi