ferhatgolge adlı üyeden alıntı: mesajı görüntüle
ozraksy çok güzel sorular. çok teşekkür ederim. aynı hataları ben de almaktayım. bir türlü php tarafında geçemedik bu kısmı. c# da bi yere kadar getirdi arkadaş olayı ama orda da doktor belirtilen tarihte tesiste çalışmamaktadır hatası alıyoruz imzalı e-reçete kısmında. eczane@sgk.gov.tr mail attım gönderdikleri cevap:
Aşağıdaki formata uygun veri göndermelisiniz

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://servisler.ws.eczane.gss.sgk.gov.tr">
<soapenv:Header/>
<soapenv:Body>
<ser:ereceteGiris>
<!--Optional:-->
<arg0>
<ereceteDVO>
<protokolNo>?</protokolNo>
<provizyonTipi>?</provizyonTipi>
<receteAltTuru>?</receteAltTuru>
<receteTarihi>?</receteTarihi>
<receteTuru>?</receteTuru>
<takipNo>?</takipNo>
<tcKimlikNo>?</tcKimlikNo>
<tesisKodu>?</tesisKodu>
<!--Optional:-->
<seriNo>?</seriNo>
<doktorBransKodu>?</doktorBransKodu>
<doktorSertifikaKodu>?</doktorSertifikaKodu>
<!--Optional:-->
<kisiDVO>
<!--Optional:-->
<adi>?</adi>
<!--Optional:-->
<cinsiyeti>?</cinsiyeti>
<!--Optional:-->
<dogumTarihi>?</dogumTarihi>
<!--Optional:-->
<soyadi>?</soyadi>
<tcKimlikNo>?</tcKimlikNo>
</kisiDVO>
<!--Optional:-->
<ereceteNo>?</ereceteNo>
<!--1 or more repetitions:-->
<ereceteIlacListesi>
<adet>?</adet>
<barkod>?</barkod>
<!--Optional:-->
<ilacAdi>?</ilacAdi>
<kullanimDoz1>?</kullanimDoz1>
<kullanimPeriyotBirimi>?</kullanimPeriyotBirimi>
<kullanimSekli>?</kullanimSekli>
<!--Zero or more repetitions:-->
<ereceteIlacAciklamaListesi>
<!--Optional:-->
<aciklama>?</aciklama>
<aciklamaTuru>?</aciklamaTuru>
</ereceteIlacAciklamaListesi>
<kullanimDoz2>?</kullanimDoz2>
<kullanimPeriyot>?</kullanimPeriyot>
<!--Optional:-->
<geriOdemeKapsaminda>?</geriOdemeKapsaminda>
</ereceteIlacListesi>
<!--1 or more repetitions:-->
<ereceteTaniListesi>
<!--Optional:-->
<taniAdi>?</taniAdi>
<taniKodu>?</taniKodu>
</ereceteTaniListesi>
<!--Zero or more repetitions:-->
<ereceteAciklamaListesi>
<!--Optional:-->
<aciklama>?</aciklama>
<aciklamaTuru>?</aciklamaTuru>
</ereceteAciklamaListesi>
<!--Optional:-->
<doktorAdi>?</doktorAdi>
<!--Optional:-->
<doktorSoyadi>?</doktorSoyadi>
<doktorTcKimlikNo>?</doktorTcKimlikNo>
</ereceteDVO>
<tesisKodu>?</tesisKodu>
<doktorTcKimlikNo>?</doktorTcKimlikNo>
</arg0>
</ser:ereceteGiris>
</soapenv:Body>
</soapenv:Envelope>
<?php try{ $client = new SoapClient("https://sgkt.sgk.gov.tr/medula/eczane/saglikTesisiReceteIslemleriWS?wsdl"); $wsse = '<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> <wsse:Username>99999999990</wsse:Username> <wsse:Password Type="http://docs.oasis-open.org/ws ms/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">99999999990</wsse:Password> </wsse:UsernameToken> </wsse:Security>'; $header_data = new SoapVar($wsse, XSD_ANYXML); $header = new SoapHeader('http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd', 'Security', $header_data); $client->__setSoapHeaders($header); $adi=''; $cinsiyeti=''; $dogumTarihi=''; $soyadi=''; $tcKimlikNo='99999999990'; $kisidvo = []; $kisidvo[] = new SoapVar($adi,XSD_STRING,null,"",'adi'); $kisidvo[] = new SoapVar($cinsiyeti,XSD_STRING,null,"",'cinsiyeti') ; $kisidvo[] = new SoapVar($dogumTarihi,XSD_STRING,null,"",'dogumTari hi'); $kisidvo[] = new SoapVar($soyadi,XSD_STRING,null,"",'soyadi'); $kisidvo[] = new SoapVar($tcKimlikNo,XSD_LONG,null,"",'tcKimlikNo') ; $aciklama='Hipertansiyon'; $aciklamaTuru='1'; $ereceteIlacAciklamaDVO = []; $ereceteIlacAciklamaDVO[] = new SoapVar($aciklama,XSD_STRING,null,"",'aciklama'); $ereceteIlacAciklamaDVO[] = new SoapVar($aciklamaTuru,XSD_INT,null,"",'aciklamaTur u'); $adet=1; $barkod='8699786010055'; $ilacAdi='ATACAND PLUS 16 12.5 MG.28 TABLET'; $kullanimDoz1='1'; $kullanimPeriyotBirimi='1'; $kullanimSekli='1'; $kullanimDoz2='1'; $kullanimPeriyot='1'; $geriOdemeKapsaminda='E'; $ereceteIlacDVO = []; $ereceteIlacDVO[] = new SoapVar($adet,XSD_INT,null,"",'adet'); $ereceteIlacDVO[] = new SoapVar($barkod,XSD_LONG,null,"",'barkod'); $ereceteIlacDVO[] = new SoapVar($ilacAdi,XSD_STRING,null,"",'ilacAdi'); $ereceteIlacDVO[] = new SoapVar($kullanimDoz1,XSD_INT,null,"",'kullanimDoz 1'); $ereceteIlacDVO[] = new SoapVar($kullanimPeriyotBirimi,XSD_INT,null,"",'ku llanimPeriyotBirimi'); $ereceteIlacDVO[] = new SoapVar($kullanimSekli,XSD_INT,null,"",'kullanimSe kli'); $ereceteIlacDVO[] = new SoapVar($ereceteIlacAciklamaDVO,XSD_ANYXML,null,"" ,'ereceteIlacAciklamaListesi'); $ereceteIlacDVO[] = new SoapVar($kullanimDoz2,XSD_DOUBLE,null,"",'kullanim Doz2'); $ereceteIlacDVO[] = new SoapVar($kullanimPeriyot,XSD_INT,null,"",'kullanim Periyot'); $ereceteIlacDVO[] = new SoapVar($geriOdemeKapsaminda,XSD_STRING,null,"",'g eriOdemeKapsaminda'); $taniAdi='Hipertansiyon'; $taniKodu='I15'; $ereceteTaniDVO = []; $ereceteTaniDVO[] = new SoapVar($taniAdi,XSD_STRING,null,"",'taniAdi'); $ereceteTaniDVO[] = new SoapVar($taniKodu,XSD_STRING,null,"",'taniKodu'); $ereceteAciklamaDVO=[]; $ereceteAciklamaDVO[] = new SoapVar($aciklama,XSD_STRING,null,"",'aciklama'); $ereceteAciklamaDVO[] = new SoapVar($aciklamaTuru,XSD_INT,null,"",'aciklamaTur u'); $protokolNo='2'; $provizyonTipi='1'; $receteAltTuru='1'; $receteTarihi=date('m.d.Y'); $receteTuru='1'; $takipNo='0'; $tcKimlikNo='99999999990'; $tesisKodu='11069903'; $seriNo=''; $doktorBransKodu='9999'; $doktorSertifikaKodu='0'; $ereceteNo='0'; $doktorAdi='Ferhat'; $doktorSoyadi='Gölge'; $doktorTcKimlikNo='99999999990'; $erecetedvo = []; $erecetedvo[]= new SoapVar($protokolNo,XSD_STRING,null,"",'protokolNo '); $erecetedvo[]= new SoapVar($provizyonTipi,XSD_INT,null,"",'provizyonT ipi'); $erecetedvo[]= new SoapVar($receteAltTuru,XSD_INT,null,"",'receteAltT uru'); $erecetedvo[]= new SoapVar($receteTarihi,XSD_STRING,null,"",'receteTa rihi'); $erecetedvo[]= new SoapVar($receteTuru,XSD_INT,null,"",'receteTuru'); $erecetedvo[]= new SoapVar($takipNo,XSD_STRING,null,"",'takipNo'); $erecetedvo[]= new SoapVar($tcKimlikNo,XSD_LONG,null,"",'tcKimlikNo') ; $erecetedvo[]= new SoapVar($tesisKodu,XSD_STRING,null,"",'tesisKodu') ; $erecetedvo[]= new SoapVar($seriNo,XSD_STRING,null,"",'seriNo'); $erecetedvo[]= new SoapVar($doktorBransKodu,XSD_INT,null,"",'doktorBr ansKodu'); $erecetedvo[]= new SoapVar($doktorSertifikaKodu,XSD_INT,null,"",'dokt orSertifikaKodu'); $erecetedvo[]= new SoapVar($kisidvo,XSD_ANYXML,null,"",'kisiDVO'); $erecetedvo[]= new SoapVar($ereceteNo,XSD_STRING,null,"",'ereceteNo') ; $erecetedvo[]= new SoapVar($ereceteIlacDVO,XSD_ANYXML,null,"",'erecet eIlacListesi'); $erecetedvo[]= new SoapVar($ereceteTaniDVO,XSD_ANYXML,null,"",'erecet eTaniListesi'); $erecetedvo[]= new SoapVar($ereceteAciklamaDVO,XSD_ANYXML,null,"",'er eceteAciklamaListesi'); $erecetedvo[]= new SoapVar($doktorAdi,XSD_STRING,null,"",'doktorAdi') ; $erecetedvo[]= new SoapVar($doktorSoyadi,XSD_STRING,null,"",'doktorSo yadi'); $erecetedvo[]= new SoapVar($doktorTcKimlikNo,XSD_LONG,null,"",'doktor TcKimlikNo'); $parameters = []; $parameters[] = new SoapVar($erecetedvo, XSD_ANYXML, null, "", 'ereceteDVO'); $parameters[] = new SoapVar('11069903', XSD_INT, null, "", 'tesisKodu', ''); $parameters[] = new SoapVar('99999999990', XSD_STRING, null, "", 'doktorTcKimlikNo'); $parameter = [ 'arg0' => new SoapVar($parameters, SOAP_ENC_OBJECT) ]; echo json_encode($parameter); echo '<br>'; $results = $client->ereceteGiris($parameter); print_r($results); } catch (SoapFault $e){ die('ERR: ' . $e->getMessage()); } ?>





aldığım hata :
stdClass Object ( [ereceteGirisReturn] => stdClass Object ( [sonucKodu] => 9109 [sonucMesaji] => Gonderdiginiz mesaj beklenen mesaj formatina uymamaktadir. Detay: cvc-complex-type.2.4.a: Invalid content was found starting with element 'protokolNo'. One of '{ereceteDVO}' is expected. ) )
@yassey in son koduyla test ortamında hem yeni reçete, hem aktif ilaç ve hem de reçete silme işlemlerini başarıyla tamamladım ama gerçek ortama geçince
ERR: SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://medeczane.sgk.gov.tr/medula/eczane/saglikTesisiYardimciIslemleriWS?wsdl' : Start tag expected, '<' not found
şeklinde hata alıyorum. SGK'ya yazdım, gönderdiğiniz talebi atın dediler, attım ama dönüş yapmadılar. Sizin de başınıza böyle bir şey geldi mi acaba?
İnternette bir yerlerde, TLS1.2 ile ilgili olduğu yazıyor ama şu anda kullandığım iletişim TLS1.2 imiş servis sağlayıcının söylediğine göre.
Sevgiler.