Yedek Parça Entegrasyonu

Licrus’da, yedek parça bilgilerini doğrudan tanımlayıp kullanabilirsiniz Bazı durumlarda Yedek Parça bilgilerini farklı bir sistemden almak veya aktarmak istediğinizde ilgili sistem tarafından Licrus’u aşağıdaki entegrasyon metodları kullanılarak bağlantı kurabilirsiniz. Yedek Parça entegrasyon işlemlerinde SparePart nesnesi kullanılır. SparePart nesnesinin detayları için Veri Modeli başlığına bakınız.


Yeni Yedek Parça Kaydetmek veya Ürün Güncellemek
Aşağıdaki fonksiyonu kullanarak yeni bir yedek parçayı Licrus’a aktarabilir veya Code alanıyla eşleşen mevcut bir yedek parçanın bilgilerini güncelleyebilirsiniz.

Fonksiyon

SparePartResponse SaveSparePart(SparePartRequest request)

Örnek

// web service için istemci oluşturulyor
var licrusService = new Integration();

//istek nesnesi
var request = new ProductRequest();

// Login metoduyla alınmış ticket.
request.AuthTicket = ticket;

// kaydedilmek istenen yedek parça ve bilgileri.
var card = new SparePart();
// yedek parça kodu daha önce gönderilmiş bir kod ise güncelleme yapılır
// diğer durumda yeni kayıt olarak eklenecektir
card.Code = "PART-001";
// yedek parça adı
card.Name = "ABC01";
// ... diğer bilgileri 

// web servis fonksiyonu çağrılıyor
var response = licrusService.SaveSparePart(request);

// Herhangi bir hata varsa
if (response.HasError) {
    // Detaylar için (bkz:Api Kullanım)
}
else {
    //işlem başarılı gerçekleşti.
}


Kayıtlı Yedek Parçaları Almak
Aşağıdaki fonksiyonu kullanarak daha önce Licrus’a kaydedilmiş yedek parçaları alabilirsiniz. Code değeri verildiğinde sadece eşleşen yedek parça alınır. Diğer durumda tüm yedek parça bilgileri gelecektir

Fonksiyon

SparePartResponse GetSparePart(SparePartRequest request)

Örnek

// web service için istemci oluşturulyor
var licrusService = new Integration();

//istek nesnesi
var request = new ProductRequest();

// Login metoduyla alınmış ticket.
request.AuthTicket = ticket;

// filtre nesnesi.
request.Filter = new SparePartFilter();

// alınmak istenen yedek parça kodu
// boş bırakıldığında tüm yedek parçaları getirir.
request.Filter.Code = "PART-001";

var response = licrusService.GetSparePart(request);
// Herhangi bir hata varsa
if (response.HasError) {
    // Detaylar için (bkz:Api Kullanım)
}
else {
    // Arama kriterleriyle eşleşen tüm kayıtlar    
    // response.Results alanı üzerinde yeralır.    
    foreach (var item in response.Results) {
        // yedek parça bilgileri
    }
}

Servis Nesneleri

Servis üzerinden yayınlanan tüm metotlar, Request nesnesi alır ve Response nesnesi döner. Request ve Response nesneleri kullanıldığı metoda özgü alanlar içermekle birlikte ortak bazı alanlar da içerirler;

Request (İstek)

AlanAçıklama
Değer
AuthTicketKimlik doğrulaması için kullanılacak ticketZorunlu
Filter
Bu, sorguyu daraltmak için kullanılan bir dizi filtre içeren bir nesne özelliğidir. Bu durumda, “Code” adlı bir özelliğe sahiptir.
Zorunlu
Code
“Filter” nesnesi altında bir özelliktir. Yedek parçayla  ilgili bilgileri almak için kullanılmaktadır

Zorunlu

Response (Cevap)

AlanAçıklama
HasErrorİşlem sonucunda bir hata oluştuysa true değer döner. Yapılan işlem başarılıysa false değer alır.
HasMessageİşlem sonucunda paylaşılan bir bilgi mesajı varsa true değer verir.
MessageListHasError veya HasMessage alanlarından herhangi bir true ise hata veya bilgi mesajı buradan alınabilir.

Response.MessageList
Mesaj nesnesini barındıran listedir ve içerisinde yer alan Message nesnesinin detayları aşağıdaki gibidir.

AlanAçıklama
MessageHata veya Bilgi mesajı metin olarak buradan alınabilir.
Urlhttps://simpleweburl.com/api/ERP/GetPart
TypeServis tarafından gönderilen mesajın tipini verir. ServiceResponseMessageType tipinde bir enum değeri taşır. Bu alan 3 tip değer alabilir, bunlar;
Error: Hata
Info: Bilgi
Warning: Uyarı

GetPart JSON Request Modeli

{
	"AuthTicket": "demodemodemodemodemodemodemodemodemo",
  "Filter": {
    "Code": "700699064576"
  }
}

GetPart JSON Response Modeli

{
	"Results": [
		{
			"Code": "Test1",
			"Name": "Test yedek parça",
			"Description": "test",
			"CustomerPrice": 100.00,
			"ServicePrice": 100.00,
			"WarrantyPeriod": 0,
			"Products": null,
			"Labors": null,
			"Id": 0,
			"IsActive": true,
			"Text": null
		}
	],
	"MessageList": [],
	"HasError": false,
	"HasMessage": false
}

Yeni Yedek Parça Kaydetmek 


SavePart  Request (İstek)

AlanAçıklama
Değer
AuthTicketKimlik doğrulaması için kullanılacak ticketZorunlu
Entity
Parça ile ilgili bilgilerin olduğu alan Nesne
Zorunlu
Code
“Entity” nesnesi altında bir özelliktir. Yedek parça Kodu

Zorunlu
DescriptionYedek parça açıklama alanı
Zorunlu
IsActive
Nesnenin geçerlilik durumu.

Zorunlu
NameYedek parça ismi
Zorunlu
WarrantyPeriodGaranti süresi
Zorunlu
ServicePriceServis fiyatı
Zorunlu
CustomerPrice
Müşteri fiyatı

Zorunlu
AvailableToOrder Siparişe açık mı ?
Zorunlu
IsGivingBackİade edilebilir mi  ?
Zorunlu
AllowUseInServiceFormTrue değer verilmesi durumunda. Bu yedek parça servis formlarında kullanılabilir.
 False değer verildiğinde servis formlarında bu parça eklenemeyecektir.

Zorunlu
RelatedParts.Child.Codeİlişkili olduğu parça kodu .Verilen koda ait parça kodu yoksa hata döndürecektir.
Zorunlu

RelatedParts.RelationType
Bağlantı/İlişki türü 
Zorunlu
Products.CodeBağlı olduğu ürün kodu

Bağlı Parça ise => “bagliparca”
Muadil Parça ise =>”muadil”
Satış ALternatifi ise =>  satisaltarnatif”

Zorunlu
RelatedPartsİlişikili  parçalaristeğe bağlı
Labors.CodeBağlı olduğu işçilik kodu
Zorunlu

Labors.IsActive

Bağlı olduğu işçilik
durumu false

Zorunlu
Labors.Quantity
Bağlı olduğu işçilik
adeti

Zorunlu
AlanAçıklama
MessageHata veya Bilgi mesajı metin olarak buradan alınabilir.
Urlhttps://simpleweburl.com/api/ERP/SavePart
TypeServis tarafından gönderilen mesajın tipini verir. ServiceResponseMessageType tipinde bir enum değeri taşır. Bu alan 3 tip değer alabilir, bunlar;
Error: Hata
Info: Bilgi
Warning: Uyarı

SavePart JSON Request Modeli

{
	"AuthTicket": "demodemodemodemodemodemo",
  "Entity":{
	"Code": "RelationType6",
  "Description": "RelationType6",
  "IsActive": true,
  "Name": "RelationType6",
  "WarrantyPeriod": 12,
  "ServicePrice": 330.0,
  "CustomerPrice": 220.0,
		"AvailableToOrder":true,
		"IsGivingBack":true,
	"AllowUseInServiceForm":true,
  "Products": [

    {
      "Code": "8216368100"
    },
    {
      "Code": "8216376100"
    }

  ],
  "RelatedParts": [
	
    {
		"Child":{
      "Code": "7006990002"
    },
		"RelationType":{
				"Code":"muadil"
			},
		"IsActive":1
}
 
  ],
  "Labors": [
    {
      "Code": "36-40",
      "IsActive": true,
      "Quantity": 2
    },
    {
      "Code": "31-35",
      "IsActive": false,
      "Quantity": 1
    }

  ]
}
}


SavePart JSON Response Modeli

{
	"Results": [],
	"MessageList": [],
	"HasError": false,
	"HasMessage": false
}

Örnek hata response

ürün kodu hatalı verildiği durumda

{
	"Results": [],
	"MessageList": [
		{
			"Type": 0,
			"Message": "345 Koduyla eşleşen bir ürün tanımı bulunamadı"
		}
	],
	"HasError": true,
	"HasMessage": true
}


Yedek Parça Güncellemek



Güncelleme işleminde Yedek parça Koduna göre işlem yapm aktadır.Bu alan eşleşen bir yedek parça kodu verilmediği zamanda yeni bir yedek parça kaydı açacaktır.Aynı metod ve url kullanılmaktadır


SavePart  Request (İstek)

AlanAçıklama
Değer
AuthTicketKimlik doğrulaması için kullanılacak ticketZorunlu
Entity
Parça ile ilgili bilgilerin olduğu alan Nesne
Zorunlu
Code
“Entity” nesnesi altında bir özelliktir. Yedek parça Kodu.Bu alan eşleşen bir yedek parça kodu verilmediği zamanda yeni bir yedek parça kaydı açacaktır.

Zorunlu
DescriptionYedek parça açıklama alanı
Zorunlu
IsActive
Nesnenin geçerlilik durumu.

Zorunlu
NameYedek parça ismi
Zorunlu
WarrantyPeriodGaranti süresi
Zorunlu
ServicePriceServis fiyatı
Zorunlu
CustomerPrice
Müşteri fiyatı

Zorunlu
Products.CodeBağlı olduğu ürün kodu
Zorunlu
Labors.CodeBağlı olduğu işçilik kodu
Zorunlu

Labors.IsActive

Bağlı olduğu işçilik
durumu false

Zorunlu
Labors.Quantity
Bağlı olduğu işçilik
adeti

Zorunlu
AlanAçıklama
MessageHata veya Bilgi mesajı metin olarak buradan alınabilir.
Urlhttps://simpleweburl.com/api/ERP/SavePart
TypeServis tarafından gönderilen mesajın tipini verir. ServiceResponseMessageType tipinde bir enum değeri taşır. Bu alan 3 tip değer alabilir, bunlar;
Error: Hata
Info: Bilgi
Warning: Uyarı

Update işlemi için
SavePart JSON Request Modeli

{
	"AuthTicket": "demodemodemodemodemodemo",
  "Entity":{
	"Code": "RelationType6",
  "Description": "RelationType6",
  "IsActive": true,
  "Name": "RelationType6",
  "WarrantyPeriod": 12,
  "ServicePrice": 330.0,
  "CustomerPrice": 220.0,
		"AvailableToOrder":true,
		"IsGivingBack":true,
	"AllowUseInServiceForm":true,
  "Products": [

    {
      "Code": "8216368100"
    },
    {
      "Code": "8216376100"
    }

  ],
  "RelatedParts": [
	
    {
		"Child":{
      "Code": "7006990002"
    },
		"RelationType":{
				"Code":"muadil"
			},
		"IsActive":1
}
 
  ],
  "Labors": [
    {
      "Code": "36-40",
      "IsActive": true,
      "Quantity": 2
    },
    {
      "Code": "31-35",
      "IsActive": false,
      "Quantity": 1
    }

  ]
}
}


Update işlemi için
SavePart JSON Reponse Modeli

{
	"Results": [],
	"MessageList": [],
	"HasError": false,
	"HasMessage": false
}