• 22-10-2018, 21:05:33
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhabalar,

    https://www.ticimax.com/dokumanlar/webservis.pdf

    Bu adresteki webservis dökümanını kullanarak, ticimax altyapısına sahip bir müşterimin sitesinde ürün oluşturmaya çalışıyorum. Soap kullanarak webservis dökümanındaki tüm metodları kullanabildim. Yalnızca SaveUrun yani ürün oluşturma metodunda takıldım kaldım. Çünkü bu metodda diğerlerinden farklı olan tek bir şey var. O da c# olarak verdikleri örnekte bir parametreyi "ref" olarak göndermiş.

    Webservis dökümanının 7. sayfasından 9. sayfasına kadar SaveUrun metodu işleniyor. 9. sayfaya bakarsanız;

    urunServis.SaveUrun("U15saQ48dW453X1cA", ref urunKartlari, ukAyar, varyasyonAyar);

    şeklinde urunKartlari ref olarak gönderiliyor.

    ref nedir? PHP'de bunun karşılığı nasıl olabilir, nasıl kullanılabilir. Konuyla ilgili bilgisi olan arkadaşların yardımcı olmasını rica ederim.

    Aldığım hata şu:
    Value cannot be null. Parameter name: source

    Örnek kodum şu şekilde:

    <?php
    
    $ticimax = new SoapClient("http://www.MUSTERIALANADI.com/Servis/UrunServis.svc?wsdl");
    
    $kategoriler = array();
    
    $urunResimleri = array();
    
    $varyasyonlar = array(
    	array(
    		"ID" => 0,
    		"Aktif" => false,
    		"AlisFiyati" => 10,
    		"Barkod" => "",
    		"Desi" => 1,
    		"KargoUcreti" => 0,
    		"KdvDahil" => true,
    		"KdvOrani" => 8,
    		"Ozellikler" => array(
    							array(
    								"Tanim" => "Numara",
    								"Deger" => 38
    							),
    							array(
    								"Tanim" => "Renk",
    								"Deger" => "Mavi"
    							)
    						),
    		"ParaBirimiID" => 1,
    		"Resimler" => array(),
    		"SatisFiyati" => 100,
    		"StokAdedi" => 15,
    		"StokKodu" => ""
    	),
    	array(
    		"ID" => 0,
    		"Aktif" => false,
    		"AlisFiyati" => 10,
    		"Barkod" => "",
    		"Desi" => 1,
    		"KargoUcreti" => 0,
    		"KdvDahil" => true,
    		"KdvOrani" => 8,
    		"Ozellikler" => array(
    							array(
    								"Tanim" => "Numara",
    								"Deger" => 40
    							),
    							array(
    								"Tanim" => "Renk",
    								"Deger" => "Mavi"
    							)
    						),
    		"ParaBirimiID" => 1,
    		"Resimler" => array(),
    		"SatisFiyati" => 100,
    		"StokAdedi" => 15,
    		"StokKodu" => ""
    	)
    );
    
    $urunKarti = array(
    	"ID" => 0,
    	"Aktif" => false,
    	"UrunAdi" => "Test ürün adı",
    	"Aciklama" => "Test ürün açıklama",
    	"AnaKategori" => "İç Giyim",
    	"AnaKategoriID" => 1,
    	"Kategoriler" => $kategoriler,
    	"MarkaID" => 1,
    	"TedarikciID" => 1,
    	"Resimler" => $urunResimleri,
    	"SatisBirimi" => "Adet",
    	"UcretsizKargo" => false,
    	"OnYazi" => "Test ürün önyazı",
    	"PuanDeger" => 12,
    	"SeoAnahtarKelime" => "",
    	"SeoSayfaAciklama" => "",
    	"SeoSayfaBaslik" => "",
    	"Varyasyonlar" => $varyasyonlar,
    	"Vitrin" => false,
    	"YeniUrun" => false
    );
    
    $params = array(
    	array(
    		"UyeKodu" => $this->wsCode,
    		"UrunKartlari" => $urunKarti,
    		"ukAyar" => array(
    			"AciklamaGuncelle" => true,
    			"AktifGuncelle" => true,
    			"FBStoreGosterGuncelle" => false,
    			"FirsatUrunuGuncelle" => true,
    			"KategoriGuncelle" => false,
    			"MaksTaksitSayisiGuncelle" => false,
    			"MarkaGuncelle" => false,
    			"OnYaziGuncelle" => false,
    			"ParaPuanGuncelle" => true,
    			"SatisBirimiGuncelle" => false,
    			"SeoAnahtarKelimeGuncelle" => false,
    			"SeoSayfaAciklamaGuncelle" => false,
    			"SeoSayfaBaslikGuncelle" => false,
    			"TedarikciGuncelle" => false,
    			"UcretsizKargoGuncelle" => true,
    			"UrunAdiGuncelle" => true,
    			"UrunResimGuncelle" => false,
    			"VitrinGuncelle" => false,
    			"YeniUrunGuncelle" => true
    		),
    		"vAyar" => array(
    			"AktifGuncelle" => false,
    			"AlisFiyatiGuncelle" => true,
    			"BarkodGuncelle" => false,
    			"IndirimliFiyatiGuncelle" => true,
    			"KargoUcretiGuncelle" => false,
    			"KargoAgirligiGuncelle" => true,
    			"ParaBirimiGuncelle" => false,
    			"PiyasaFiyatiGuncelle" => true,
    			"SatisFiyatiGuncelle" => false,
    			"StokAdediGuncelle" => true,
    			"UyeTipiFiyat1Guncelle" => false,
    			"UyeTipiFiyat2Guncelle" => true,
    			"UyeTipiFiyat3Guncelle" => false,
    			"UyeTipiFiyat4Guncelle" => true,
    			"UyeTipiFiyat5Guncelle" => false,
    			"TedarikciKodunaGoreGuncelle" => false
    
    		)
    	)
    );
    
    try{
    
    	print_r($ticimax->__soapCall("SaveUrun", $params));
    
    
    }
    catch(Exception $e){
    	echo $e->getMessage();
    }
    
    ?>
  • 22-10-2018, 22:53:21
    #2
    $params = array(
    array(
    "UyeKodu" => $this->wsCode,
    "UrunKartlari" => $urunKarti,

    bu kısımda UrunKartlari ni
    "UrunKartlari" => array($urunKarti),

    olarak denermisin onun bir dizi olması gerekiyor. şuan ilk gözüme çarpan hata o
  • 22-10-2018, 23:30:04
    #3
    mehmetuken adlı üyeden alıntı: mesajı görüntüle
    $params = array(
    array(
    "UyeKodu" => $this->wsCode,
    "UrunKartlari" => $urunKarti,

    bu kısımda UrunKartlari ni
    "UrunKartlari" => array($urunKarti),

    olarak denermisin onun bir dizi olması gerekiyor. şuan ilk gözüme çarpan hata o
    Şu an sonuç aynı.
  • 22-10-2018, 23:50:10
    #4
    Parametre adını UrunKartlari yerine urunKartlari olarak dene istersen birde hassaslık gösteriyor mu büyük küçük tam emin değilim ama.



    Birde şu kısmına name vermek gerekli gibi
    "UrunKartlari" => array("UrunKarti"=>$urunKarti),
    gibi bişey olabilir xml de bu tagin içinde geliyor.
  • 18-04-2020, 12:07:27
    #5
    Kimlik doğrulama veya yönetimden onay bekliyor.
    $paramters = array(
    "UyeKodu" => $code,
    "urunKartlari" => $urun,
    "ukAyar" => [],
    "vAyar" => []
    );
  • 21-06-2021, 17:58:12
    #6
    erginkeles adlı üyeden alıntı: mesajı görüntüle
    Merhabalar,

    https://www.ticimax.com/dokumanlar/webservis.pdf

    Bu adresteki webservis dökümanını kullanarak, ticimax altyapısına sahip bir müşterimin sitesinde ürün oluşturmaya çalışıyorum. Soap kullanarak webservis dökümanındaki tüm metodları kullanabildim. Yalnızca SaveUrun yani ürün oluşturma metodunda takıldım kaldım. Çünkü bu metodda diğerlerinden farklı olan tek bir şey var. O da c# olarak verdikleri örnekte bir parametreyi "ref" olarak göndermiş.

    Webservis dökümanının 7. sayfasından 9. sayfasına kadar SaveUrun metodu işleniyor. 9. sayfaya bakarsanız;

    urunServis.SaveUrun("U15saQ48dW453X1cA", ref urunKartlari, ukAyar, varyasyonAyar);

    şeklinde urunKartlari ref olarak gönderiliyor.

    ref nedir? PHP'de bunun karşılığı nasıl olabilir, nasıl kullanılabilir. Konuyla ilgili bilgisi olan arkadaşların yardımcı olmasını rica ederim.

    Aldığım hata şu:
    Value cannot be null. Parameter name: source

    Örnek kodum şu şekilde:

    <?php
    
    $ticimax = new SoapClient("http://www.MUSTERIALANADI.com/Servis/UrunServis.svc?wsdl");
    
    $kategoriler = array();
    
    $urunResimleri = array();
    
    $varyasyonlar = array(
    	array(
    		"ID" => 0,
    		"Aktif" => false,
    		"AlisFiyati" => 10,
    		"Barkod" => "",
    		"Desi" => 1,
    		"KargoUcreti" => 0,
    		"KdvDahil" => true,
    		"KdvOrani" => 8,
    		"Ozellikler" => array(
    							array(
    								"Tanim" => "Numara",
    								"Deger" => 38
    							),
    							array(
    								"Tanim" => "Renk",
    								"Deger" => "Mavi"
    							)
    						),
    		"ParaBirimiID" => 1,
    		"Resimler" => array(),
    		"SatisFiyati" => 100,
    		"StokAdedi" => 15,
    		"StokKodu" => ""
    	),
    	array(
    		"ID" => 0,
    		"Aktif" => false,
    		"AlisFiyati" => 10,
    		"Barkod" => "",
    		"Desi" => 1,
    		"KargoUcreti" => 0,
    		"KdvDahil" => true,
    		"KdvOrani" => 8,
    		"Ozellikler" => array(
    							array(
    								"Tanim" => "Numara",
    								"Deger" => 40
    							),
    							array(
    								"Tanim" => "Renk",
    								"Deger" => "Mavi"
    							)
    						),
    		"ParaBirimiID" => 1,
    		"Resimler" => array(),
    		"SatisFiyati" => 100,
    		"StokAdedi" => 15,
    		"StokKodu" => ""
    	)
    );
    
    $urunKarti = array(
    	"ID" => 0,
    	"Aktif" => false,
    	"UrunAdi" => "Test ürün adı",
    	"Aciklama" => "Test ürün açıklama",
    	"AnaKategori" => "İç Giyim",
    	"AnaKategoriID" => 1,
    	"Kategoriler" => $kategoriler,
    	"MarkaID" => 1,
    	"TedarikciID" => 1,
    	"Resimler" => $urunResimleri,
    	"SatisBirimi" => "Adet",
    	"UcretsizKargo" => false,
    	"OnYazi" => "Test ürün önyazı",
    	"PuanDeger" => 12,
    	"SeoAnahtarKelime" => "",
    	"SeoSayfaAciklama" => "",
    	"SeoSayfaBaslik" => "",
    	"Varyasyonlar" => $varyasyonlar,
    	"Vitrin" => false,
    	"YeniUrun" => false
    );
    
    $params = array(
    	array(
    		"UyeKodu" => $this->wsCode,
    		"UrunKartlari" => $urunKarti,
    		"ukAyar" => array(
    			"AciklamaGuncelle" => true,
    			"AktifGuncelle" => true,
    			"FBStoreGosterGuncelle" => false,
    			"FirsatUrunuGuncelle" => true,
    			"KategoriGuncelle" => false,
    			"MaksTaksitSayisiGuncelle" => false,
    			"MarkaGuncelle" => false,
    			"OnYaziGuncelle" => false,
    			"ParaPuanGuncelle" => true,
    			"SatisBirimiGuncelle" => false,
    			"SeoAnahtarKelimeGuncelle" => false,
    			"SeoSayfaAciklamaGuncelle" => false,
    			"SeoSayfaBaslikGuncelle" => false,
    			"TedarikciGuncelle" => false,
    			"UcretsizKargoGuncelle" => true,
    			"UrunAdiGuncelle" => true,
    			"UrunResimGuncelle" => false,
    			"VitrinGuncelle" => false,
    			"YeniUrunGuncelle" => true
    		),
    		"vAyar" => array(
    			"AktifGuncelle" => false,
    			"AlisFiyatiGuncelle" => true,
    			"BarkodGuncelle" => false,
    			"IndirimliFiyatiGuncelle" => true,
    			"KargoUcretiGuncelle" => false,
    			"KargoAgirligiGuncelle" => true,
    			"ParaBirimiGuncelle" => false,
    			"PiyasaFiyatiGuncelle" => true,
    			"SatisFiyatiGuncelle" => false,
    			"StokAdediGuncelle" => true,
    			"UyeTipiFiyat1Guncelle" => false,
    			"UyeTipiFiyat2Guncelle" => true,
    			"UyeTipiFiyat3Guncelle" => false,
    			"UyeTipiFiyat4Guncelle" => true,
    			"UyeTipiFiyat5Guncelle" => false,
    			"TedarikciKodunaGoreGuncelle" => false
    
    		)
    	)
    );
    
    try{
    
    	print_r($ticimax->__soapCall("SaveUrun", $params));
    
    
    }
    catch(Exception $e){
    	echo $e->getMessage();
    }
    
    ?>
    üstad php ile bende birşeyler karalıyorumda ticimaxten ürün çekip gönderip kullanmak için bir sistem hazırlamam lazım çok iyi degilim soap tarafında paylaşımını gördüm çok sevindim cidden. Rica etsem ürün çekme ve gönderme sayfalarını benimle paylaşabilir misin. Ücretlide olsa destek verirsen bana çok sevinirim. bilgi@emreay.com.tr