با سلام

در quote نیاز داریم که کلید activate qoute برای یک کاربر خاص فعال باشد و بعد از اینکه این کلید توسط آن کاربر زده شده و status فرم quote به active تغییر کرد یک report که توسط visual studio درست شده برای کاربر دیگری که مسئول پرینت گرفتن هست به نمایش در بیاد.

لطفا راهنمایی بفرمایید که این روال به چه شکل باید پیاده سازی بشه و از چه روشهایی باید استفاده کنم.

با تشکر

سلام

ازونجایی که تغییر عملکرد دکمه های سیستمی خطرات زیادی را خواهد داشت، بنابراین امکان تغییر در ساختار خود دکمه Activate وجود ندارد. به عنوان راه حل جایگزین، میتوانید دکمه Activate اصلی را مخفی نمایید و دکمه ای مشابه آن ایجاد نمایید. حال می توانید برای دکمه جدید از Display Rule استفاده نمایید. رول هم می تواند بر اساس Security Role کاربر تنظیم شود، تا برای مثال برای کاربرانی با دسترسی خاص قابل مشاهده باشد. همچنین دقت کنید که رول دیگری نیز نیاز است تا فقط در حالت Draft این دکمه فعال باشد (Enable Rule). 

برای بخش ریپورت می توانید از یک IFrame بر روی فرم استفاده نمایید. اسکریپت یا Ruleی برای این کار تنظیم نمایید تا فقط زمانی که Quote در وضعیت Active قرار داشت این IFrame را نمایش دهد. در داخل این IFrame میتوانید گزارش مورد نظر را نمایش دهید.

با سلام

ممنون از راهنماییتون. اما من یه مشکلی توی برنامه ribbon دارم؛ اصلا ruleها به command اضافه نمی شوند.

لطفا شکل پیوست را ملاحظه بفرمایید.

با تشکر

سلام

 

با توجه به اینکه در قسمت Display Rule آن Command اعمال شده است، به نظر نمی رسد مشکلی وجود داشته باشد. اینکه در سمت چپ چگونه نمایش داده می شود، اهمیتی ندارد. به نظرم اون Rule اعمال شده است.

با سلام و تشکر از راهنماییتون

برای نمایش کلید از step ؛ form state استفاده کردم که در حالت existing کلید را نمایش می دهد و برای اینکه برای کاربر خاصی فعال باشد از کد پیوست استفاده کردم که متأسفانه وقتی این کد را ، custom javascript rule استفاده می کنم و تنظیمات پیوست را هم به کار می برم اصلا دیگه کلید نمایش داده نمی شود

ضمنا برای اینکه در حالت drft کلید فعال باشد از چه stepای باید استفاده کنم؟

لطفا راهنمایی بفرمایید.

با تشکر

ببخشید...

فایل پیوست

با سلام

کد رو تغییر دادم اما کد بدون اینکه خطایی بده اجرا نمی شد ؛ برنامه رو خط به خط چک کردم و متوجه شدم که در خطی که داره از سرور response می گیره دچار خطا می شه ؛ برنامه و خطایی که میده به پیوست می باشد.

تا اونجایی که من متوجه شدم مربوط به اینه که سرور رو پیدا نمی کنه.

آیا درسته و یا مشکل از چیز دیگه ای هست.

لطفا راهنمایی بفرمایید.

با تشکر

سلام

من فکر می کنم اصلاً نیازی به این نباشه. الان دسترسی به Ribbon Workbench ندارم، ولی تا جایی که یادمه، خودش یه چیزی داشت برای بررسی Role کاربر. حالا به فرض هم که نباشه، خیلی راحت تر با کدهای موجود توی Xrm.Page میشه نقش های امنیتی کاربر رو گرفت.

Xrm.Page.context.getUserRoles()