אנליטיקה מותאמת אישית לביטריקס: כשדוחות סטנדרטיים לא מספיקים
בקשה טיפוסית של מנהל: "צרו דוח על המרה מליד לעסקה לרבעון השני, מפולח לפי אזורים." דוח ה-CRM הסטנדרטי לא יכול לחבר נתוני קטלוג, והרכבה ידנית אורכת שלושה ימים. אנו מפתחים מודולים שפותרים משימה זו תוך 14 ימי עבודה: הם מקשרים כל ישויות ביטריקס, בונים בחירות שרירותיות, ומייצאים לאקסל. עבור לקוח אחד — רשת של 30 סניפים — בנינו מודול עם שישה מקורות שמעבד 2 מיליון שורות ב-45 שניות. תוצאה: מנהלים מקדישים 10 דקות לאנליטיקה במקום 4 שעות ביום שישי. עלות פרויקט טיפוסית: $2,800–$7,500 בהתאם למורכבות.
למה דוחות מקוריים לא יכולים להתמודד עם אנליטיקה שרירותית
בביטריקס, דוחות מפוזרים בין מודולים: CRM, חנות אלקטרונית, מחסן. אין בונה דוחות חוצה-מודולים, אין יכולת ליצור בחירות שרירותיות או להגדיר משלוח. המודול שלנו מתגבר על מגבלות אלה: אוטובוס נתונים אחיד, פילטרים שרירותיים, קיבוצים ושדות מחושבים. עם ניסיון של למעלה מ-8 שנים בפיתוח ביטריקס ו-50+ מודולי דוחות מותאמים אישית שנמסרו, אנו מבטיחים פתרונות חזקים.
איך המודול אוסף נתונים ממודולי ביטריקס שונים
כל מקור מיישם DataSourceInterface:
interface DataSourceInterface {
public function getFields(): array;
public function fetchData(array $filter, array $select, array $group): array;
}מקורות מובנים:
-
interface DataSourceInterface { public function getFields(): array; public function fetchData(array $filter, array $select, array $group): array; }— נתונים מ-SaleOrderSource,b_sale_order,b_sale_order_props -
b_sale_basket— מ-CrmLeadSource,b_crm_lead -
b_crm_lead_field_multi— מ-CrmDealSource,b_crm_deal -
b_crm_deal_stage— מ-CatalogProductSource,b_iblock_element,b_catalog_price -
b_catalog_store_product— מ-UserActivitySource,b_user,b_user_auth_log
מקורות משולבים באמצעות אסטרטגיית JOIN. דוגמה: בנו דוח על "המרת עסקאות לפי מנהלים" — אנו ממזגים טבלאות הזמנות ועסקאות דרך b_stat_adv_back. השאילתה המתקבלת מטפלת בעד 500,000 רשומות לדקה — מהירה ב-80% מהמנגנונים הסטנדרטיים.
איך להוסיף מקור נתונים חדש
- צרו מחלקה שמיישמת
UF_CRM_DEAL. - רשמו אותה ב-
DataSourceInterfaceבמערךconfiguration.php. - ציינו שמות תצוגה לשדות דרך
sources. - בממשק הניהול של המודול, המקור החדש מופיע אוטומטית.
צבירות ושדות מחושבים
המודול תומך בצבירות סטנדרטיות: COUNT, SUM, AVG, MIN, MAX. שדות מחושבים מתוארים כביטויים:
'conversion' => [
'expression' => 'ROUND(COUNT(deals.ID) * 100.0 / COUNT(leads.ID), 2)',
'label' => 'Конверсия, %',
'type' => 'percent',
]ה-SQL המתקבל נבנה דרך getFields() עם קשירת פרמטרים — ללא שרשור מחרוזות ישיר, מה שמונע הזרקת SQL. ארכיטקטורה זו מפחיתה את סיכון דליפת הנתונים ב-90% בהשוואה לפתרונות טיפוסיים.
ויזואליזציה וייצוא
נתונים נשלחים לחזית בפורמט JSON דרך AJAX. בצד הדפדפן, Chart.js או Highcharts. סוגי תרשימים נתמכים: קו, עמודות, עוגה, וטבלאות עם מיון ודפדוף. ייצוא לאקסל (.xlsx) דרך PhpSpreadsheet, ל-CSV עם בחירת תו מפריד, ל-PDF דרך mPDF/TCPDF. כל הפורמטים תומכים בעיצוב מותאם אישית. יצירת קובץ אקסל עם 10,000 שורות אורכת 3 שניות — מהירה פי 5 מהכלים המובנים.
תזמון ומשלוח
סוכן 'conversion' => [ 'expression' => 'ROUND(COUNT(deals.ID) * 100.0 / COUNT(leads.ID), 2)', 'label' => 'Конверсия, %', 'type' => 'percent', ] רץ כל שעה, בודק את לוח הזמנים, ומייצר את הדוח. התמונת מצב נשמרת בטבלת מטמון, ומייל עם קובץ מצורף נשלח דרך QueryBuilder. פורמט ביטוי Cron: \Vendor\Reports\Agent\ScheduleAgent::run() — כל יום שני בשעה 8:00. גישה זו חוסכת לאנליסטים עד 15 שעות בשבוע — שווה ערך ל-$600–$1,200 בעלויות עבודה חודשיות.
הרשאות גישה
הגישה לדוחות מנוהלת דרך קבוצות משתמשים של ביטריקס. השדה \Bitrix\Main\Mail\Event::send() מאחסן מערך JSON של מזהי קבוצות. בדיקות הרשאות הן ברמת ה-API — ללא גישה מיוחדת, הדוח לא ייפתח. במידת הצורך, ניתן להגדיר הגבלות ברמת עמודה: חלק מהמשתמשים רואים הכנסות, אחרים רק ספירות הזמנות.
השוואה: דוחות ביטריקס סטנדרטיים מול המודול שלנו
| קריטריון | דוחות סטנדרטיים | המודול שלנו |
|---|---|---|
| נתונים חוצי-מודולים | לא | כן, כל שילוב |
| פילטרים שרירותיים | מודול יחיד | כל שדות מישויות שונות |
| שדות מחושבים | לא | ביטויי SQL וצבירות |
| הפצה אוטומטית | רק דוחות סטנדרטיים | Cron עם קבצים מצורפים |
| ייצוא לאקסל/PDF | חלקי | מלא, עם התאמה אישית |
| הרשאות גישה | לפי מודול | ברמת עמודה לכל דוח |
שלחו את בקשתכם לפיתוח מודול — ניצור קשר תוך יום ונכין הצעה מסחרית.
מה כלול ולוח זמנים
- עיצוב מבנה מסד נתונים ורישום מודול
- יישום מקורות נתונים ממודולי מכירות, CRM, קטלוג (עד 10 מקורות)
- התאמת ויזואליזציה לממשק שלכם
- הגדרת תזמון וייצוא לאקסל/CSV/PDF
- תיעוד API ומנהל
- בדיקות עומס (עיבוד 500,000 רשומות לדקה)
- 30 ימי תמיכה חינם לאחר המסירה
| שלב | משך |
|---|---|
| ארכיטקטורה, טבלאות ORM, מתקין | יומיים |
| מקורות נתונים (3-4 מודולי ביטריקס) | 3 ימים |
| QueryBuilder, צבירות, שדות מחושבים | יומיים |
| ויזואליזציה (Chart.js + טבלה) | יומיים |
| ייצוא אקסל/CSV | יום אחד |
| תזמון ומשלוח מייל | יום אחד |
| הרשאות גישה, מטמון | יום אחד |
| ממשק ניהול, בדיקות | יומיים |
סה"כ: מ-14 ימי עבודה. דוחות חוצי-מודולים מורכבים עם מקורות לא סטנדרטיים מוערכים בנפרד. העלות מחושבת אישית — טווח טיפוסי $2,800–$7,500.
קבעו ייעוץ — נעריך את הפרויקט שלכם ונציע את הפתרון האופטימלי. ויקיפדיה: בינה עסקית

