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
#31
DelphiCan aracılığı ile yardımcı olabildiysek ne mutlu bize.
Amatör Küme Bilgisayar Programcısı
WWW
Cevapla
#32
(06-12-2017, Saat: 00:16)barutali Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlDelphiCan aracılığı ile yardımcı olabildiysek ne mutlu bize.

Merhaba,
Hocam paylaşımınız ve detaylı olarak anlatımınız için teşekkürler, ALLAH razı olsun. Hal kayıt sistemi geliştirme/çalışma ortamımdan uzak fakat, WebServis öyle yada böyle işimizin bir parçası. Burada dikkat etmemiz gereken noktalara dikkat çektiğiniz ve Delphinin yetersiz yada eksik kalmadığını, sadece ezbere kullanıldığını net bir şekilde gösterdiniz.
Cevapla
#33
(06-12-2017, Saat: 09:38)Cyber Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
(06-12-2017, Saat: 00:16)barutali Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlDelphiCan aracılığı ile yardımcı olabildiysek ne mutlu bize.

Merhaba,
Hocam paylaşımınız ve detaylı olarak anlatımınız için teşekkürler, ALLAH razı olsun. Hal kayıt sistemi geliştirme/çalışma ortamımdan uzak fakat, WebServis öyle yada böyle işimizin bir parçası. Burada dikkat etmemiz gereken noktalara dikkat çektiğiniz ve Delphinin yetersiz yada eksik kalmadığını, sadece ezbere kullanıldığını net bir şekilde gösterdiniz.

Dotnet ile geliştirilen SOAP Uygulamalarının bazılarında aynı problem var. Sebebi tam olarak nedir bende bilmiyorum. Tahminim dotnet sürümü ile alakalı olabileceği..
Teşekkürler.
Amatör Küme Bilgisayar Programcısı
WWW
Cevapla
#34
(08-12-2017, Saat: 06:03)barutali Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
(06-12-2017, Saat: 09:38)Cyber Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlMerhaba,
Hocam paylaşımınız ve detaylı olarak anlatımınız için teşekkürler, ALLAH razı olsun. Hal kayıt sistemi geliştirme/çalışma ortamımdan uzak fakat, WebServis öyle yada böyle işimizin bir parçası. Burada dikkat etmemiz gereken noktalara dikkat çektiğiniz ve Delphinin yetersiz yada eksik kalmadığını, sadece ezbere kullanıldığını net bir şekilde gösterdiniz.

Dotnet ile geliştirilen SOAP Uygulamalarının bazılarında aynı problem var. Sebebi tam olarak nedir bende bilmiyorum. Tahminim dotnet sürümü ile alakalı olabileceği..
Teşekkürler.


Android tarafından dotnet soap projesine bağlantı kurarken de bu parametreyi geçmek gerekiyor. yoksa bağlanamıyor. Bu dotnet hep sıkıntı Big Grin

 SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;// önemli


   
public void writeBody(XmlSerializer writer) throws IOException {
        if(this.bodyOut != null) {
           this.multiRef = new Vector();
           this.multiRef.addElement(this.bodyOut);
           Object[] qName = this.getInfo((Object)null, this.bodyOut);
           writer.startTag(this.dotNet?""SadString)qName[0], (String)qName[1]);
           if(this.dotNet) {
               writer.attribute((String)null, "xmlns", (String)qName[0]);
           }

           if(this.addAdornments) {
               writer.attribute((String)null, "id", qName[2] == null?"o0"SadString)qName[2]);
               writer.attribute(this.enc, "root", "1");
           }

           this.writeElement(writer, this.bodyOut, (PropertyInfo)null, qName[3]);
           writer.endTag(this.dotNet?""SadString)qName[0], (String)qName[1]);
       }

   }
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Kuvvete dayanamayan adalet aciz, 
Adalete dayanamayan kuvvet zalimdir.
WWW
Cevapla
#35
(08-12-2017, Saat: 08:39)yhackup Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
(08-12-2017, Saat: 06:03)barutali Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlDotnet ile geliştirilen SOAP Uygulamalarının bazılarında aynı problem var. Sebebi tam olarak nedir bende bilmiyorum. Tahminim dotnet sürümü ile alakalı olabileceği..
Teşekkürler.


Android tarafından dotnet soap projesine bağlantı kurarken de bu parametreyi geçmek gerekiyor. yoksa bağlanamıyor. Bu dotnet hep sıkıntı Big Grin

 SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;// önemli


   
public void writeBody(XmlSerializer writer) throws IOException {
        if(this.bodyOut != null) {
           this.multiRef = new Vector();
           this.multiRef.addElement(this.bodyOut);
           Object[] qName = this.getInfo((Object)null, this.bodyOut);
           writer.startTag(this.dotNet?""SadString)qName[0], (String)qName[1]);
           if(this.dotNet) {
               writer.attribute((String)null, "xmlns", (String)qName[0]);
           }

           if(this.addAdornments) {
               writer.attribute((String)null, "id", qName[2] == null?"o0"SadString)qName[2]);
               writer.attribute(this.enc, "root", "1");
           }

           this.writeElement(writer, this.bodyOut, (PropertyInfo)null, qName[3]);
           writer.endTag(this.dotNet?""SadString)qName[0], (String)qName[1]);
       }

   }

Tüm projelerimiz .NET soap servislerini kullanıyor. Nasıl bir sorun yaşıyorsunuz? Zarf nesnesinin serialize edilmesi ile ilgili daha önce bir problemle karşılaşmadım.
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Cevapla
#36
Arkadaşlar yine bu konuyla ilgili bir sorunum var.Kod aşağıdaki gibi.
var
  servis :IBildirimService;  
  kisi :BaseRequestMessageOf_KayitliKisiSorguIstek;
  kisicevap :BaseResponseMessageOf_KayitliKisiSorguCevap ;
  I: Integer;
  istk :KayitliKisiSorguIstek2;
begin
  try
    memo1.Clear;
    servis:= GetIBildirimService;
    istk :=KayitliKisiSorguIstek.Create;

    kisi:= BaseRequestMessageOf_KayitliKisiSorguIstek.Create;
    kisi.UserName:=_username;
    kisi.Password:=_pass;
    kisi.ServicePassword:=_webpass;

    kisi.Istek:=KayitliKisiSorguIstek2.Create;

    kisi.Istek.TcKimlikVergiNolar :=ArrayOfstring2.Create;
    kisi.Istek.TcKimlikVergiNolar.SetstringArrayLength(1);
    kisi.Istek.TcKimlikVergiNolar.SetstringArray(0,'000000000000000');

    kisicevap:=servis.BildirimServisKayitliKisiSorgu(kisi);

    for I:= 0 to kisicevap.Sonuc.TcKimlikVergiNolar.Len-1 do
    begin
      memo1.Lines.Add(kisicevap.Sonuc.TcKimlikVergiNolar[i].TcKimlikVergiNo);
    end;
  finally
    kisi.Free;
  end;

Fiddler ile baktığımda TC kimlik boş gönderilmiş görünüyor.Nerede hata yapıyorum ?Teşekkürler.

<?xml version="1.0"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body><BaseRequestMessageOf_KayitliKisiSorguIstek xmlns="http://www.gtb.gov.tr//WebServices">
<Istek>
<TcKimlikVergiNolar xmlns="http://schemas.datacontract.org/2004/07/GTB.HKS.Bildirim.ServiceContract"/>
</Istek>
<Password>xxxxx</Password>
<ServicePassword>xxxx</ServicePassword>
<UserName>xxxxxx</UserName>
</BaseRequestMessageOf_KayitliKisiSorguIstek></SOAP-ENV:Body></SOAP-ENV:Envelope>
Cevapla
#37
WebService in pas dosyasında

6590. satırda ki procedure ün içeriğini aşağıda ki gibi değiştirmeniz lazım..


procedure ArrayOfstring2.SetstringArray(Index: Integer; const Item: string); // --> 6590. satır..
begin
  Fstring_[Index] := Item;
  Fstring__Specified := True; // Eklenen satır..
end;


const
_username = 'user';
_pass     = 'pas';
_webpass  = 'wpass';
var
Params : BaseRequestMessageOf_KayitliKisiSorguIstek;
KVN    : ArrayOfstring2;
Sonuc  : BaseResponseMessageOf_KayitliKisiSorguCevap;
AIstek : KayitliKisiSorguIstek2;
I      : Integer;
begin
Memo1.Clear;

Params := BaseRequestMessageOf_KayitliKisiSorguIstek.Create;
Params.UserName        := _username;
Params.Password        := _pass;
Params.ServicePassword := _webpass;

KVN := ArrayOfstring2.Create;
KVN.SetstringArrayLength(1);
KVN.SetstringArray(0, '00000000000');

AIstek := KayitliKisiSorguIstek2.Create;
AIstek.TcKimlikVergiNolar := KVN;

Params.Istek := AIstek;

Sonuc := BaseResponseMessageOf_KayitliKisiSorguCevap.Create;
Sonuc := GetIBildirimService().BildirimServisKayitliKisiSorgu(Params);

if Sonuc.HataKodlari = nil then
begin
  for I := 0 to Sonuc.Sonuc.TcKimlikVergiNolar.Len -1 do
  begin
   Memo1.Lines.Add( Sonuc.Sonuc.TcKimlikVergiNolar[I].TcKimlikVergiNo );
  end;
end
 else
 begin
   // hata oluştu..
 end;
Amatör Küme Bilgisayar Programcısı
WWW
Cevapla
#38
Ali bey ,
Yine çok detay ve teknik bir bilgi .Yine harika bir çözüm.
Çok teşekkür ediyorum
Cevapla
#39
(01-12-2017, Saat: 09:22)ismailkocacan Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
(01-12-2017, Saat: 09:20)eyln Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlSiz XML dosyasını hangi ortamda oluşturuyorsunuz acaba?

C#

İsmail bey, C# için HKS web servisinin kullanımıyla ilgili yardımcı olabilir misiniz? Örnek proje gönderebilir misiniz?
Cevapla
#40
(26-09-2018, Saat: 11:13)fatihkaba Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol... C# için ... web servisinin kullanımıyla ...? Örnek ...?

Fatih Bey, size hızlı bir eğitim oluşturuyorum;

5 Adımda C# Web Servisi Oluşturma

  1. Visual Studio'yu açın. File > New > Project. (Web klasöründen .Net Framework'ü seçin.)
  2. Boş template olarak projeyi oluşturun.
  3. Solution Explorer üzerinden Project Folder'a sağ tuş yapın. Add > New Item'a tıklayın.
  4. Sol menüden Visual C#'ı seçin. Web Service (ASMX) dosyası oluşturun.
  5. Oluşturduğunuz dosyanın içinde [WebMethod] tag ile oluşturduğunuz metodların hepsi Web servisten erişilebilir olacaktır.
Not: Oluşturduğunuz projeyi F5 ile çalıştırın. Localhost'ta oluşan asmx uzantılı linkinizin sonuna ?WSDL ekleyin. (Delphi'de lazım olacak)

5 Adımda Delphi'de C# Web Servisi Ekleme

  1. Delphi'yi açın. File > New > Project. (FMX veya VCL, farketmez.)
  2. Üst menüden Component > Import WSDL'ye tıklayın.
  3. Location of WSDL File or URL kısmına yukarıdaki notta yazdığım haliyle linkinizi yapıştırın.
  4. Next > Next > Finish yapın.
  5. Oluşan Pas dosyası ile web servisinize erişebilirsiniz. 
5 Adımda Delphi'ye eklenen C# Web Servisi Kullanma

  1. Oluşan pas dosyasını projede kullanacağınız pas dosyanıza ekleyin. (ALT+F11 kombinasyonu ile USES menüsünden seçin.) (Interface'in uses'ına ekleyin.)
  2. WEBSERVISADINIZSoap tipinden bir nesne ekleyin. (var servisim: BENIMSERVISSoap;)
  3. function GetWEBSERVISADINIZSoap diye bir fonksiyon var. Onu bulun.
  4. Bir Event'ın içinde servisim := GetBENIMSERVISSoap(true,'',nil); // servisi initialize edin.
  5. Oluşturduğunuz WebMethod olan metodunuza servisim.MetodIsmi(); olarak erişin.
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
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.027 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: 2 Ziyaretçi