سلام
برای ثبت قرارداد از متد SaveContract داریم استفاده می کنیم.
1. نحوه اتصال قرارداد به مشتری استفاده از crmid هست؟
2. این crmid رو تو وب سرویس ثبت قرارداد با استفاده از IdentityId داریم ارسال می کنیم. کارمون درسته؟
3. اطلاعات قرارداد ثبت میشه ولی پاسخی دریافت نمی کنیم و وب سرویس روی همون رکورد اول می مونه. چیکار باید بکنیم؟
علاوه بر خطای بالا در بعضی موارد ما اکسپشن میگیریم و با خطای زیر مواجه میشیم.
The request channel timed out while waiting for a reply after 00:00:03.9939939. Increase the timeout value passed to the call to Request or increase the SendTimeout value on the Binding. The time allotted to this operation may have been a portion of a longer timeout.
هم در مورد قبلی و هم در این مورد، بعد از اینکه بدون هیچ تغییری در کد، دوباره وب سرویس رو اجرا می کنیم، سیستم خطا میده که رکورد تکراریه
ما از متدهای searchperson و searchorgan استفاده می کنیم تا crmid رو به دست بیاریم. بعد مقدار crmid رو در identityid می ریزیم و در متد savecontract استفاده می کنیم تا قرارداد مورد نظر رو برای شخص/شرکت مربوطه ثبت کنیم. ولی با دیتای یکسان خطاهای مختلفی دریافت می کنیم که دو نمونه اش رو توضیح دادم. یکی اکسپشن هست. اون یکی هم هیچ پاسخی دریافت نمی کنیم.
در حالتی که پاسخی دریافت نمی کنیم، یه زمان انتظار چند ثانیه ای برای عدم دریافت پاسخ تنظیم می کنیم که بره رکورد بعدی. اطلاعات ثبت میشه ولی ما هیچ لاگی نداریم که چی ثبت شده و چی ثبت نشده
بعد از یه هفته پیگیری که دنبال جوابیم اینو نوشتین؟؟!