بلاگ

نحوه ایجاد Auto Complete برای فیلدهای Text در CRM


حتما برای شما هم پیش آمده که بخواهید درهنگام تایپ در یک فیلد از نوع Single Line of Text سیستم به شما پیشنهاداتی را بدهد، در نسخه جدید CRM این قابلیت ایجاد شده و شما می‌توانید با نوشتن اسکرپیت مربوطه به راحتی این قابلیت را به CRM خود اضافه کنید.

تیم توسعه شبکه آداکبا تسلط کامل بر نرم افزار سی آر ام مایکروسافت، آماده ارائه مشاوره خرید crm مایکروسافت به شما هستند. شما می‌توانید برای آموزش این نرم افزار به نیروهای خود هم، روی توسعه شبکه آداکحساب کنید.

سناریو: فرض کنید که فیلدی به نام استان در فرم متشری داریم و می‌خواهیم هنگامی که کاربر در این فیلد تایپ می‌کند، چنانچه پیشنهاداتی وجود دارد در زیر آن فیلد لیست شود:

ایجاد Auto Complete در CRM

ابتدا وارد Customization شوید و فیلد خود را بسازید و یا اینکه از لیست فیلدهای موجود فیلد خود را انتخاب کنید.

مهمترین چیزی که وجود دارد، نوشتن کد مربوطه و اجرا صحیح آن است. از طریق مراحل زیر اقدام کنید.

۱) ابتدا یک تابع به نام ShowProvinceSuggestion ایجاد کنید.

۲) داخل تابع، یک آرایه از استان‌های ایران را مانند زیر بسازید.

var provinces = [

        { id: 1, name: 'آذربایجان شرقی' },

        { id: 2, name: 'آذربایجان غربی' },

        { id: 3, name: 'اردبیل' },

        { id: 4, name: 'اصفهان' },

        { id: 5, name: 'ایلام' }

]

۳ ) تابع دیگری بنام provinceSearch داخل تابع اصلی خود تعریف کنید. این تابع کار جستجو و نمایش اطلاعات مربوطه را انجام خواهد داد.

var provinceSearch = function (ext) {}

ضمنا، از الان همه کارها داخل تابع provinceSearch انجام خواهد شد.

خرید crm مایکروسافت
با خرید crm مایکروسافت کمتر کار کنید، بیشتر درآمد کسب کنید. با استفاده از نرم افزار سی آر ام فروش‌تان را افزایش دهید و کسب و کارتان را بهتر مدیریت و کنترل کنید. جهت مشاوره و خرید crm مایکروسافت، می‌توانید با کارشناسان ما در ارتباط باشید:

خرید crm مایکروسافت

۴) ابتدا از طریق کد زیر محتوای فیلد خود را داخل یک متغییر ذخیره کنید.

var userInput = Xrm.Page.getControl(“provinceField”).getValue();

۵) پس از آن کد زیر را به تابع خود اضافه کنید:


            resultSet = {
                results: new Array(),
                commands: {
                    id: "sp_commands",
                    label: "New Province",
                    action: function () {
                        alert("You can add Custom Action here");
                    }
                }
            };

متغییر resultSet دقیقا همان صفحه خواهد بود که ما به عنوان پیشنهادات خود خواهیم دید، که از دو قسمت results که همان نتایج جستجو است و commands که برای افزودن یک عمل خاص و نمایش آن در زیر نتایج جستجو است، استفاده می شود.

۶) پس از آن نوبت به جستجوی مقدار و افزودن آن به لیست نتایج می‌رسد. کد زیر را به ادامه تابع خود اضافه کنید.

for (i = 0; i < provinces.length; i++) {
if (userInput === provinces[i].name.substring(0, userInput.length)) {
resultSet.results.push({ id: i, fields: [provinces[i].name, provinces[i].id], icon: "provinceIconPath" });
}
if (resultSet.results.length >= 10) break;
}

توضیح: این قسمت از کد، مقدار وارد شده توسط کاربر را با همه موارد داخل آرایه استان‌های ثبت شده مقایسه می کند و در طورتیکه این مقدار برابر شرط ما باشد آن را به لیست نتایج اضافه می‌کند.

یک لیست می‌تواند شامل ID، آرایه‌ای از فیلدها جهت نمایش و Icon باشد که می‌توانید هر کدام از آنها را به دلخواه مقداردهی کنید.

پیشنهاد مطالعه

۷) پس از اینکه جستجو انجام شد، وقت آن رسیده تا لیست نتایج جستجو را به کاربر نمایش دهیم که از طریق کد زیر نیز می‌توان این کار را انجام داد.



if (resultSet.results.length > 0) {
                ext.getEventSource().showAutoComplete(resultSet);
            } else {
                ext.getEventSource().hideAutoComplete();
            }

۸) کار ما با تابع provinceSearch تمام شد و در داخل تابع اصلی که ابتدا با نام ShowProvinceSuggestion ایجاد کردیم، کد زیر را اضافه می‌کنیم تا هنگام فشردن دکمه‌های کیبورد، تابع ما اجرا شود و مفادیر را نمایش دهد.


Xrm.Page.getControl(provinceField).addOnKeyPress(provinceSearch);

۹) در مرحله آخر همه کدهای خود را به عنوان یک Web Resource به CRM اضافه می‌کنیم و در فرم Account به عنوان یک کتابخانه آن را اضافه می‌کنیم. همچنین برای اجرایی شدن این قابلیت تابع اصلی یعنی ShowProvinceSuggestion را در onload فرم فراخوانی می‌کنیم.

ایجاد Auto Complete در CRM

در آخر کار تغییرات خود را ذخیره و Publish کنید و تست خود را انجام دهید.

منبع: توسعه شبکه آداک(ایران اچ پی)

خرید crm مایکروسافت
با خرید crm مایکروسافت کمتر کار کنید، بیشتر درآمد کسب کنید. با استفاده از نرم افزار سی آر ام فروش‌تان را افزایش دهید و کسب و کارتان را بهتر مدیریت و کنترل کنید. جهت مشاوره و خرید crm مایکروسافت، می‌توانید با کارشناسان ما در ارتباط باشید:

خرید crm مایکروسافت

 

نویسنده : تحریریه نرم افزار فالنیک



منبع

مطالب مرتبط

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.