Появилась надобность выставлять счета в разных валютах, но столкнулись с проблемой - тип валюты не выбирается, а просто выставляется базовый по умолчанию. Т.е. если у вас две валюты - рубли и гривны, то вы сможете выставлять счета только меняя базовую валюту в конфигах валют в crm(это реальный совет где-то вычитал).
Все, что необходимо сделать это кастомизировать компонент crm.invoice.edit. В конце статьи приложу готовый код component.php.
Что делаем?
1. Создаем пространство имен, ну например /bitrix/components/dev/ 2. Копируем туда компоненту crm.invoice.edit 3. В скопированной компоненте заменяем component.php (будет прикреплено к статье) 4. Далее копируем шаблон комплексной компоненты отвечающей за раздел счетов. Идем сюда /crm/invoice/list/ . Режим правки. И копируем компонент в шаблон, применяя новый шаблон. 5. Затем идем в шаблон сайта /<шаблон сайта>/bitrix/components/crm.invoice/custom_invoice_edit/edit.php и заменяем там стандартную компоненту на свою, которую скопировали в п.1. http://prntscr.com/dv1rf0
Вот и все, можно пользоваться. Далее уже разберу что менялось в component.php.
Теперь немного проблематики, разберем component.php
1. Задается всегда базовая цена сайта для счета. Пришлось менять со стандартного.
3. Добавил в создание счета поле с установкой валюты, потому что оно там вообще не устанавливается http://prntscr.com/dv1t8l. Ориентировочно строку видно на скрине.
Александр Жогов , к сожалению, давно этим вопросом не занимался. Но в целом могу сказать, что задача довольно не простая и требует серьезного уровня поддержки этого функционала + постоянных доработок специалистом.
И кстати, надо проверить нет ли этого в стандартном функционале уже )
Как вы знаете Документации по API CRM в корпоративном портале довольно мало, так что немного про нее.
1) Если нет документации - это не повод впадать в панику. Идем читать ядро. API расположено в модуле crm /bitrix/modules/crm/classes/general/. 2) Дальше ищем название нужной сущности. Если работаете с контактами значит нам нужен файл crm_contact.php, со сделками - crm_deal.php, компаниями - crm_company.php. В этих файлах берем названия классов, а методы обычно стандартные - GetList(), Add(), Update(). Но есть и специфические для отдельных сущностей, с ними бывает тяжелее. 3) Также в помощь идут компоненты compоnent.php. Если вам надо добавить сущность crm КОНТАКТ - то не лишним будет глянуть например компоненту crm.contact.edit.
Ну и немного практики. Создадим в CRM "контакт" с ответственным менеджером и "компанию" для контакта.
Описания полей нигде нет. В форме CRM удобно через firebug смотреть названия полей для редактирования, обычно они совпадают с ключами в $arFields.
Теперь создадим компанию и привяжем ее к контакту.
$arFieldsComp = array(
'TITLE' => "МММ",
//здесь привязываем к компании контакт (обязательно с array())
'CONTACT_ID' => array($iContactID),
);
$CCrmCompany = new CCrmCompany();
$companyId = $CCrmCompany->Add($arFieldsComp);
//а так например, у контакта меняется компания
$CCrmContact = new CCrmContact();
$CCrmContact->UpdateCompanyId(array($iContactID), $companyId);
Ну и конечно, ждем официальной документации. Удачи всем.
Но после какого-то недавнего обновления для прозрачных изображений начал появляться черный фон вместо прозрачных пикселов.
Полез в ядро. В общем, если кратко, добавилась поддержка фильтров для изображений. И в результате вызова функции таким образом, как показано выше, к вашему изображению, применяется вот такая штука
В CRM есть список контактов с днями рождениями клиентов. Есть ответственный менеджер по контакту. Что делать если мы хотим создать задачу на менеджера за 1 день до дня рождения клиента, чтобы он его поздравил.
Я напишу агента, но можно и модифицировать скрипт для выполнения на cron
function getContactBirthday()
{
CModule::IncludeModule('crm');
global $DB;
//находим дату +1 день от сегодняшней
$day_date=date("d-m", strtotime("+1 days"));
//достаем контакты у которых завтра день рождения и вешаем им задачи
$db_data=$DB->Query('SEL ECT * FR OM b_crm_contact WHERE DATE_FORMAT(BIRTHDATE, "%d-%m") = "'.$day_date.'"');
while($arr = $db_data->Fetch())
{
if (CModule::IncludeModule("tasks"))
{
$arFields = Array(
"TITLE" => "Скоро день рождения у клиента ".$arr['FULL_NAME'],
"DESCRIPTION" => 'Необходимо поздравить клиента "<a href="/crm/contact/show/'.$arr['ID'].'/">'.$arr['FULL_NAME'].'</a>"',
"RESPONSIBLE_ID" => $arr['ASSIGNED_BY_ID'], //id пользователя ответственного за контакт
"CREATED_BY" => $arr['ASSIGNED_BY_ID']
);
$obTask = new CTasks;
$ID = $obTask->Add($arFields);
}
}
return "getContactBirthday();";
}
После этого создаем агента с периодичностью в 1 день.
Тут я использовал прямой запрос к БД без API, т.к. иногда клиенты не сообщают год рождения(женщины например) и приходится вбивать в crm липовый год. Т.о. приходится работать с днем и месяцем. Как я понял, API контактов пока не позволяет такое делать.
К задаче можно добавить deadline по сроку выполнения.
1) api GetList в CRM отстает по функциональности от GetList в инфоблоках или CUser. Такую выборку вы не сделаете, тем более по дням и месяцам 2) насчет производительности, то как раз прямые запросы выполняются гораздо быстрее чем API битрикс. В них много проверок и доп функционала. Ну и в данном случае это просто SELECT, а не update или add. Так что иногда даже нужно делать прямые запросы. Конечно, если вы знаете, что делаете. 3) насчет виджета не знаю, но думаю он работает с пользователями портала, а не с клиентами. Возможно ошибаюсь, попробую поискать если что отпишусь. 4) да, рацпредложения классные, думаю даже внедрим их )
Иногда функционала модуля SMS4B не хватает на все надобности пользователей. Как расширить его функционал?
Скорей всего все Ваши проблемы может решить добавление пары строк в файл init.php.
Итак, задача, нужно добавить дополнительное уведомление по sms администратору о смене заказа.
Заходим в /bitrix/php_interfaces/init.php(если его нет, то создаем). И пишем простой код.
AddEventHandler("sale", "OnSaleStatusOrder", "MyOnSaleStatusOrder");
function MyOnSaleStatusOrder($ID, $val)
{
if (CModule::IncludeModule("rarus.sms4b"))
{
global $SMS4B;
//текст SMS
$text = "У заказа №".$ID." поменялся статус заказа";
//на какой номер отправляется SMS
$adminPhoneNumber = "79037976505";
$SMS4B->SendSms($text, $adminPhoneNumber);
}
}
Ну а дальше сколько Вам фантазии хватит. Спасибо за внимание.
Иногда функционала модуля SMS4B не хватает на все надобности пользователей. Как расширить его функционал?
Скорей всего все Ваши проблемы может решить добавление пары строк в файл init.php.
Итак, задача, нужно добавить дополнительное уведомление по sms администратору о смене заказа.
Заходим в /bitrix/php_interfaces/init.php(если его нет, то создаем). И пишем простой код.
AddEventHandler("sale", "OnSaleStatusOrder", "MyOnSaleStatusOrder");
function MyOnSaleStatusOrder($ID, $val)
{
if (CModule::IncludeModule("rarus.sms4b"))
{
global $SMS4B;
//текст SMS
$text = "У заказа №".$ID." поменялся статус заказа";
//на какой номер отправляется SMS
$adminPhoneNumber = "79037976505";
$SMS4B->SendSms($text, $adminPhoneNumber);
}
}
Ну а дальше сколько Вам фантазии хватит. Спасибо за внимание.
Сервис SMS4B.RU выпустили долгожданное обновление (1.0.3) SMS-модуля для 1С-Битрикс с поддержкой UTF-8. Обновление можно установить через административный интерфейс 1С-Битрикс, используя систему обновления сторонних модулей SiteUpdate. Теперь SMS-модуль можно использовать и на сайтах, которые работают в кодировке UTF-8.
Весь функционал модуля полностью поддерживается. Подробная информация о возможностях модуля, а также, как установить и настроить модуль, доступна на нашем сайте. Всвязи с изменениями, которые внесли в систему marketplace разработчики Битрикс, документация обновлена.
Также небольшие исправления в модуле. Поправлена транслитерация, теперь она корректно настраивается, а также поправлена проблема с отправкой стандартных почтовых шаблонов при смене статуса заказа.
1. Версия вроде уже 1.0.4. 2. Ссылка не открывается - 404. Уже открывается 3. Скудный функционал, есть куча предложений по его расширению в КП.
А именно: Рассылка уведомлений о новой задаче, возможность включения на уровне инфоблока (например в экстранете нужно уведомление, в интранете нет и наоборот), возможность настройки кому отправлять уведомление при постановке задачи (автору не надо, исполнителю и следящему - надо), возможность формирования шаблонов СМС из полей инфоблока, типа "[тема]|[папка задачи]|[дата начала]|[дата конца]", еще возможность делать в шаблоне форматирование полей: типа строка - обрезка до N-символов или (огого!) - сокращение слов, типа дата - преобразование в нужный формат даты и времени.
В общем чтото наверное отсюда покажется на грани фантастики, но не так ли все у нас движется вперед
Денис, да, версия уже 1.0.4, в ней есть небольшие исправления прошлых ошибок ).
Насчет КП, то скорей всего мы будем делать акцент на создание удобного API и каких-то примеров разработки дополнительного функционала, т.к. за всеми продуктами и нововведениями от компании Битрикс мы не будем успевать. Так что такие задачи как вы описали наверно придется делать самостоятельно.
Рады вам сообщить о снижении цен на пакеты SMS (СМС)! Также расширена шкала пакетов СМС.
Дополнительно к предоплатному тарифу на пакеты СМС появился новый постоплатный тариф с расчетом по итогам календарного месяца. Стоимость СМС зависит от общего количества отправленных за месяц СМС.
В разделе Цены вы можете ознакомиться с новым прайс-листом.
В разделе Программы СМС вы можете ознакомиться и скачать бесплатные программы для рассылки СМС из программ 1С, 1С-Битрикс и другие программы СМС.
У нас закончилась неделя бета-теста модуля SMS4B, и версия 1.0.2 переведена в статус "стабильная". Сразу хочу поблагодарить наших пользователей за активное участие в тестировании. С помощью Вас было обнаружено несколько недочетов и сделан ряд доработок.
Также, по просьбе наших друзей из Москвы выложу пару скриншотов, иллюстрирующих новый функционал модуля. Давайте рассмотрим новый компонент публичной отправки для Корпоративного портала.
Вся компонента делится на три части: отправка сотруднику, отправка отделу и отправка на произвольный номер.
Вот так выглядит часть компонента для отправки сотруднику. У нас тут два удобных фильтра и список сотрудников.
Чуть ниже у нас форма для текста сообщения и дополнительные параметры, дата актуальности, дата начала отправки и запрет отправки в ночное время. Подробное значение этих значений вы также могли прочесть в предыдущей статье или новой документации.
Идем дальше. Рассылка по отделам. Здесь у нас есть удобное дерево выбора департаментов и загрузки телефонов.
Ну и отправка на произвольный номер, здесь без всяких наворотов.
Из интересного, есть в настройках компонента запретить отправку на номера, которые не являются номерами сотрудников.
Так, ну пока все. Напоминаю, товарищи, стараемся как можно скорее перейти со старых версий модуля на модуль из системы SiteUpdate. Подробнее как это сделать, смотрим в обновленной документации. И наверно постараюсь еще статью сделать со скриншотами как это делается.
В модуле SMS4B для Битрикса произошли существенные изменения. В новой версии:
полная поддержка продукта «1С-Битрикс: Корпоративный портал»;
новый функционал, разработанный специально для «Корпоративного портала»;
единый дистрибутив для «Управления сайтом» и «Корпоративного портала» с возможностью обновления через стандартный механизм SiteUpdate;
ряд более мелких усовершенствований функционала для «Управления сайтом» и «Корпоративного портала».
Модуль отправки SMS для «Корпоративного портала»
Модуль SMS4B и раньше можно было использовать в «Корпоративном портале». Однако теперь разработан совершенно новый функционал, тесно интегрированный с этим продуктом.
В публичной части появился комплексный компонент, позволяющий всем пользователям «Корпоративного портала» удобно отправлять SMS:
сотрудникам и группам сотрудников, созданы удобные формы для заполнения и подбора номеров сотрудников по списку сотрудников и по структуре подразделений;
имеется возможность пакетной отправки с ограничением актуальности (например, если SMS по какой-то причине не отправлена до указанного времени, то оно не будет отправлена вообще);
можно создать сообщение заранее, а отправить позже, указав дату и время отправки;
устанавливать интервал ночного времени, в течении которого не должны отправляться SMS. Эта возможность будет полезна для массовых рассылок SMS. Если часть SMS не успеет отправиться до указанного при рассылке интервала ночного времени, рассылка будет приостановлена и продолжится утром после окончания указанного интервала ночного времени. Таким образом, рассылка SMS не будет беспокоить абонентов в ночное время.
и многое другое.
И, конечно же, без внимания не остался «центральный» объект «Корпоративного портала» – «Календарь». Так, например, если сотрудник хочет организовать какое-либо событие (например, совещание), то он может пригласить к участию других сотрудников – и они получат уведомления по SMS о самом мероприятии, времени и месте его проведения.
Новые разработки для «Управления сайтом»
Компонент «удобной отправки» (с функционалом для заполнения и подбора номеров по списку пользователей и по структуре подразделений) также доступен для пользователей «1С-Битрикс: Управление сайтом» (правда, пока с группами пользователей он не работает – для «Управления сайтом» требуется небольшая доработка).
Появилась обработка событий модуля «Техподдержка». SMS-уведомление может отправляться при создании тикета и изменении ответственного. Функционал работает как в «Управлении сайтом», так и в «Корпоративном портале».
Обновления через SiteUpdate
Недавно компания «1С-Битрикс» выпустила механизм обновления партнёрских модулей. Так, теперь партнёрские модули, поддерживающие этот механизм, обновлять так же просто, как и стандартные модули платформы. Установка обновлений, улучшений и доработок теперь будет действительно простой.
Модуль SMS4B находится в SiteUpdate уже около двух месяцев, многие уже пользуются именно этой версией модуля. Пользователям старых версий модуля мы настоятельно рекомендуем перейти на использование новой версии, поскольку именно её мы планируем поддерживать и развивать. Переход на новую версию традиционно бесплатен.
Новая документация
Мы обновили документацию «Как начать работу с модулем». Там вы найдете описание того, как перейти на новую версию, как загрузить модуль, как скачивать обновления, а также описание использования нового функционала, появившегося в последних обновлениях.
Приятного использования новой версии модуля!
Ждем ваших отзывов и пожеланий. Сделаем модуль лучше вместе!
P.S. Напомню, что до конца это недели модуль находится в статусе бета-версии, так что пока устанавливаем на тестовые сайты. Для того, чтобы попробовать модуль надо включить загружать бета-версии обновлений в настройках сайта.
Сделал статью с парой скриншотов модуля и узнал насчет работы сервиса в других странах СНГ.
Да, как и предполагал Дмитрий, юридических вопросов очень много. Т.е. законы, регламентирующие работу таких сервисов как SMS4B, отличаются в России, Украине, Казахстане. Это создает массу проблем.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».