Sipariş Güncelleme

ERP sisteminde herhangi bir sipariş üzerinde değişiklik yapıldığında bunun Licrus’a bildirilmesi gerekir. Bunun için aradaki bağlantıyı ERPOrderNumber alanı sağlar. Sipariş durumlarını güncellemek ve ERP Sipariş numaralarını eşleştirmek için UpdateOrder metodu kullanılır. Sipariş (Order) nesnesinin detayları için Veri Modeli başlığına bakınız.

Fonksiyon

OrderResponse UpdateOrder(OrderRequest)

Örnek

var licrusService = new LicrusWebServices.Integration();
var request = new OrderRequest();
request.AuthTicket = ticket; //Login metoduyla alınmış ticket
request.OrderType = OrderType.Stock; //burası her zaman Stock olarak verilmelidir.
request.Entity = new Order(); //güncellenmek istenen siparişin nesnesi
var response = licrusService.UpdateOrder(request);

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

OrderType

ERP entegrasyonu için bekleyen siparişlerin alınmasını sağlayan   nesne özelliğidir. 
Burası her zaman Stock olarak verilmelidir.
Zorunlu
Entity
güncellenmek istenen siparişin nesnesi

Zorunlu değildir.Verilmediği takdirde tüm ürünleri getirir.
Entity.IdSipariş güncellemek için Entity.Id değeri belirtilmelidir.
Zorunlu
CancellationReasonSAP’den gelen red gerekcesi doluysa satır iptal
Zorunlu
ERPOrderNumberSipariş kaydının ERP sistemiyle eşleşetirilmiş olan sipariş kodu.İsteğe Bağlı
WaybillNumberGerçekleşen sipariş için irsaliye numarası.
İsteğe Bağlı
DeliveryDateSiparişin Teslimat tarih ve saati
İsteğe Bağlı
StatusSipariş Türü
“Taslak”: 1,
“Siparis”: 2,
“Iptal”: 3,
“KismiTeslimat”: 4,
“TamTeslimat”: 5,
“Kapandi”: 6,
“İadeye Hazır”: 7,
“Beklemede”: 8,
“Onay Bekliyor”: 9


İsteğe Bağlı
OrderDetailsSipariş detayları 
İsteğe Bağlı

OrderDetails.Id

Sipariş detayları  Id numarası
 
OrderDetails verildiği takdirde zorunlu alandır
DeliveredQuantityTeslim edilen miktar
İsteğe Bağlı
DescriptionSipariş detayı için açıklama alanı
İsteğe Bağlı
StatusSipariş Türü
Onayli = 1,
Iptal = 2,
Beklet=3,
Kısmi” = 4,

İsteğe Bağlı
DiscountPercentageİndirim oranı
İsteğe Bağlı
Quantity Sipariş miktarıİsteğe Bağlı
RetailUnitPriceParekende birim fiyatı
İsteğe Bağlı

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/UpdateOrder
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ı

UpdateOrder JSON Request Modeli

{
  "AuthTicket": "demodemodemodemodemodemo",
  "OrderType": "Stock",
  "Entity": {
    "Id": 10007,
    "ERPOrderNumber": "TESTSAPOrderNumber",
    "WaybillNumber": "TESTWaybillNumber",
    "DeliveryDate": "2023-12-17T15:28:19.9727764+03:00",
    "Status": 2,
    "OrderDetails": [
      {
        "Id": 3,
        "DeliveredQuantity": 1,
        "Description": "ERP GÜNCELEME",
        "Status": 1,
        "DiscountPercentage": 0,
        "Quantity": 2,
        "RetailUnitPrice": 22.44,
        "CancellationReason" : "" //eğer dolu gelirse Id' 3 olan  satır iptal
      }
    ]
  }
}

UpdateOrder JSON Response Modeli

{
	"Results": null,
	"MessageList": [
		{
			"Type": 2,
			"Message": "Sipariş bilgileri güncellendi"
		}
	],
	"HasError": false,
	"HasMessage": true
}