forked from hesabix/arc
39 lines
5.1 KiB
Markdown
39 lines
5.1 KiB
Markdown
# رفتار فیلد جستوجوی کالا
|
|
|
|
این سند رفتار فیلد انتخاب کالا در «فروش سریع»، فاکتور و سایر فرمهایی را که از انتخابگر مشترک کالا استفاده میکنند تعریف میکند.
|
|
|
|
## نمایش پیشنهادها
|
|
|
|
- فوکوس یا کلیک روی فیلد خالی نباید منوی شناور پیشنهادها را باز کند.
|
|
- منوی پیشنهادها پس از وارد شدن متن غیرخالی نمایش داده میشود.
|
|
- پاک کردن متن، منو و انتخاب هایلایتشده را میبندد.
|
|
- پاسخ جستوجوی قدیمی نباید جای نتایج متن جدید را بگیرد.
|
|
|
|
کالاهای اخیر در بخش مستقل «محصولات اخیر» فروش سریع و در انتخابگر پیشرفته کالا همچنان قابل دسترسیاند؛ فیلد خالی از آنها برای ساخت منوی شناور استفاده نمیکند.
|
|
|
|
## صفحهکلید در فروش سریع
|
|
|
|
- کلیدهای بالا و پایین، ردیف هایلایتشده را در نتایج همان متن تغییر میدهند.
|
|
- با بارگذاری نتایج، هیچ ردیفی صرفاً به دلیل قرارگرفتن در ابتدای فهرست انتخابشده محسوب نمیشود؛ اولین فشار جهت پایین، ردیف اول را مشخص میکند.
|
|
- اگر کاربر با بالا یا پایین داخل نتایج حرکت کرده باشد، Enter همان ردیف را به سبد اضافه میکند.
|
|
- اگر فقط یک پیشنهاد برای متن فعلی باقی مانده باشد، Enter همان کالا را بدون نیاز به حرکت با بالا یا پایین به سبد اضافه میکند.
|
|
- اگر چند پیشنهاد نمایش داده شده باشد و کاربر داخل آنها حرکت نکرده باشد، Enter هیچ کالایی اضافه نمیکند و دیالوگ چندنتیجهای نیز باز نمیشود؛ کاربر باید نتیجه را با جهتنما و Enter یا با موس انتخاب کند.
|
|
- اگر پیشنهادهای متن هنوز بارگذاری نشده باشند، Enter متن خود فیلد را جستوجو میکند. این قاعده برای بارکدخوانهایی که بارکد و Enter را سریع ارسال میکنند ضروری است. این مسیر نیز در صورت یافتن چند کالا دیالوگ باز نمیکند و منتظر انتخاب از منوی پیشنهادها میماند.
|
|
- اگر نتایج نمایشدادهشده متعلق به متن قبلی باشند، Enter آنها را انتخاب نمیکند و متن فعلی مرجع جستوجو میماند.
|
|
- کلیک روی یک پیشنهاد، همان پیشنهاد را مستقیماً انتخاب میکند.
|
|
- پس از اضافهشدن کالا از مسیر جستوجوی مستقیم، فیلد در فریم بعدی دوباره فوکوس میگیرد تا اسکن بعدی بدون کلیک انجام شود.
|
|
|
|
## دامنهٔ اعمال
|
|
|
|
فروش سریع انتخابگر اختصاصی خود را دارد. فاکتور جدید و ویرایش فاکتور از `ProductComboboxWidget` در جدول اقلام استفاده میکنند. این کامپوننت مشترک در فرمهای انبار، گزارشها، تولید، توزیع، CRM و گردشکار نیز استفاده میشود؛ بنابراین قاعدهٔ «عدم نمایش منو برای فیلد خالی» در همهٔ آنها یکسان است.
|
|
|
|
## سناریوهای پذیرش
|
|
|
|
1. با باز شدن فروش سریع یا کلیک روی فیلد خالی، منویی نمایش داده نمیشود.
|
|
2. با تایپ بخشی از نام، فقط نتایج همان عبارت در منو نمایش داده میشوند.
|
|
3. با حرکت توسط بالا/پایین و زدن Enter، ردیف هایلایتشده مستقیماً به سبد اضافه میشود و پنجرهٔ «چند نتیجه پیدا شد» باز نمیشود.
|
|
4. اگر فقط یک پیشنهاد باقی مانده باشد، Enter همان کالا را مستقیماً اضافه میکند.
|
|
5. در صورت وجود چند پیشنهاد و نبود حرکت با جهتنما، Enter نه کالایی اضافه میکند و نه دیالوگ چندنتیجهای باز میکند.
|
|
6. با اسکن سریع بارکد و Enter، بارکد داخل فیلد مرجع انتخاب است و پیشنهاد هایلایتشده بهصورت ناخواسته ثبت نمیشود.
|
|
7. پس از اضافهشدن کالا با بارکد یا کد، فیلد جستوجو خالی و آمادهٔ اسکن بعدی باقی میماند.
|
|
8. در فاکتور و سایر مصرفکنندگان `ProductComboboxWidget`، کلیک روی فیلد خالی منوی ابتدای فهرست کالاها را باز نمیکند.
|