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)
Alan | Açıklama | Değer |
AuthTicket | Kimlik doğrulaması için kullanılacak ticket | Zorunlu |
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.Id | Sipariş güncellemek için Entity.Id değeri belirtilmelidir. | Zorunlu |
CancellationReason | SAP’den gelen red gerekcesi doluysa satır iptal | Zorunlu |
ERPOrderNumber | Sipariş kaydının ERP sistemiyle eşleşetirilmiş olan sipariş kodu. | İsteğe Bağlı |
WaybillNumber | Gerçekleşen sipariş için irsaliye numarası. | İsteğe Bağlı |
DeliveryDate | Siparişin Teslimat tarih ve saati | İsteğe Bağlı |
Status | Sipariş 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ı |
OrderDetails | Sipariş detayları | İsteğe Bağlı |
OrderDetails.Id | Sipariş detayları Id numarası | OrderDetails verildiği takdirde zorunlu alandır |
DeliveredQuantity | Teslim edilen miktar | İsteğe Bağlı |
Description | Sipariş detayı için açıklama alanı | İsteğe Bağlı |
Status | Sipariş 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ı |
RetailUnitPrice | Parekende birim fiyatı | İsteğe Bağlı |
Response (Cevap)
Alan | Açı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. |
MessageList | HasError 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.
Alan | Açıklama |
Message | Hata veya Bilgi mesajı metin olarak buradan alınabilir. |
Url | https://simpleweburl.com/api/ERP/UpdateOrder |
Type | Servis 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 }