===== Встраивание подсистемы "Новая почта" =====
1. Объединяем с конфигурацией модуля новой почты
{{ :delivery1.jpg?400 |}}
2. Выполняем объединение
3. Пропускаем зависимости
{{ :delivery2.jpg?400 |}}
4.1 Если модуль "Новая почта" внедряется совместно с модулями торговых площадок "eComm+" тогда перетаскиваем подсистему "Новая почта" в торговые площадки
Только вместе с "eComm+"
{{ :delivery3.jpg?400 |}}
4.2 Если модуль "Новая почта" внедряется самостоятельно (без модулей "eComm+") тогда отображаем подсистему "eComm_СлужбыДоставки" в командном интерфейсе
Только самостоятельно (без "eComm+")
{{ ::bas_np_only.png?400 |}}
===== Редактирование документа “Экспресс-накладная” =====
==== Удаление макета "ДанныеШаблонаСообщений" документа “Экспресс-накладная” ====
{{ :unf_template_delete.png?direct&400 |}}
===== Редактирование документа “Заказ покупателя” =====
==== Редактирование формы документа “Заказ покупателя” ====
Добавляем в конце метода “ПриСозданииНаСервере” следующий код
//++ ingenum.com.ua / Торговые площадки
eCommДоставкаСервер.ЗаказПокупателя_ФормаДокумента_ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка);
//-- ingenum
Добавляем в конце модуля формы следующий код
&НаКлиенте
Процедура eComm_ЭкспрессНакладнаяНажатие(Элемент, СтандартнаяОбработка) //++ eComm / Службы доставки
Если НЕ ЗначениеЗаполнено(Объект.Ссылка) Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Данные не записаны.
|Переход к экспресс-накладной возможен только после сохранения заказа';
|
|uk = 'Данные не записаны.
|Перехід до експрес-накладної можливий лише після збереження замовлення'"));
Возврат;
КонецЕсли;
Если Элемент.Имя = "eComm_ЭкспрессНакладная_Открыть" Тогда
// Это открытие списка накладных
СписокВыбора = eCommДоставкаСервер.СписокЭкспрессНакладных(Объект.Ссылка);
Если СписокВыбора.Количество() > 1 Тогда
ОповещениеОВыборе = Новый ОписаниеОповещения("ВыполнитьПослеВыбораЗначения", ЭтаФорма, Объект.Ссылка);
ПоказатьВыборИзМеню(ОповещениеОВыборе, СписокВыбора, Элементы["eComm_ЭкспрессНакладная_Открыть"]);
ИначеЕсли СписокВыбора.Количество() = 1 Тогда
ВыполнитьПослеВыбораЗначения(СписокВыбора[0], Объект.Ссылка);
Иначе
// Создадим если ранее накладная не была создана
ВыполнитьПослеВыбораЗначения(Новый Структура("Значение", Неопределено), Объект.Ссылка);
КонецЕсли;
ИначеЕсли Элемент.Имя = "eComm_ЭкспрессНакладная_Создать" Тогда
// Это создание новой накладной
ВыполнитьПослеВыбораЗначения(Новый Структура("Значение", Неопределено), Объект.Ссылка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьПослеВыбораЗначения(ЭлементСпискаВыбора, Заказ) Экспорт //++ eComm / Службы доставки
Если НЕ ЭлементСпискаВыбора = Неопределено Тогда
ЗначенияЗаполнения = Новый Структура("ДокументОснование", Заказ);
ОткрытьФорму("Документ.eComm_ЭкспрессНакладная.ФормаОбъекта", Новый Структура("Ключ, ЗначенияЗаполнения", ЭлементСпискаВыбора.Значение, ЗначенияЗаполнения));
КонецЕсли;
КонецПроцедуры
==== Редактирование формы списка “Заказ покупателя” ====
Для реквизита "Список" выполняем команду "Настройка списка" и приводим текст запроса к такому виду:
ЕСТЬNULL(ФактОплаты.СуммаОплаты, 0) + ЕСТЬNULL(ФактОплаты.СуммаАванса, 0) КАК СуммаОплатыОборот,
//++
//ЗаказыПокупателейССайта.НомерЗаказаНаСайте КАК НомерНаСайте,
ВЫБОР
КОГДА НЕ ДокументЗаказПокупателя.НомерВходящегоДокумента = "" Тогда
ДокументЗаказПокупателя.НомерВходящегоДокумента
Иначе
ЗаказыПокупателейССайта.НомерЗаказаНаСайте
Конец КАК НомерНаСайте,
eComm_СтатусыЭкспрессНакладных.ЭкспрессНакладная.НомерТТН КАК ЭкспрессНакладная,
eComm_СтатусыЭкспрессНакладных.ОписаниеСтатуса КАК ОписаниеСтатуса,
eComm_СтатусыЭкспрессНакладных.СтатусДенежногоПеревода,
eComm_СтатусыЭкспрессНакладных.ДнейХраненияНаСкладе КАК ДнейХраненияНаСкладе,
eComm_СтатусыЭкспрессНакладных.НачалоПлатногоХранения,
ЕСТЬNULL(СообщенияSMS.КоличествоSMS, 0) КАК SMS,
//--
ЗаказыПокупателейССайта.ДатаЗаказаНаСайте КАК ДатаНаСайте,
ВЫБОР
КОГДА НаличиеФайлов.ЕстьФайлы ЕСТЬ NULL
ТОГДА 0
КОГДА НаличиеФайлов.ЕстьФайлы
ТОГДА 1
ИНАЧЕ 0
КОНЕЦ КАК ЕстьФайлы
ИЗ
Документ.ЗаказПокупателя КАК ДокументЗаказПокупателя
//++
{ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.eComm_ЭкспрессНакладныеСпискаЗаказов КАК eComm_ЭкспрессНакладныеСпискаЗаказов
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.eComm_СтатусыЭкспрессНакладных КАК eComm_СтатусыЭкспрессНакладных
ПО eComm_ЭкспрессНакладныеСпискаЗаказов.ЭкспрессНакладная = eComm_СтатусыЭкспрессНакладных.ЭкспрессНакладная
ПО eComm_ЭкспрессНакладныеСпискаЗаказов.ДокументОснование = ДокументЗаказПокупателя.Ссылка}
{ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
КОЛИЧЕСТВО(РАЗЛИЧНЫЕ СообщениеSMS.Ссылка) КАК КоличествоSMS,
СообщениеSMS.ДокументОснование КАК ДокОснование
ИЗ
Документ.Событие КАК СообщениеSMS
ГДЕ
СообщениеSMS.ПометкаУдаления = ЛОЖЬ
И СообщениеSMS.ТипСобытия = ЗНАЧЕНИЕ(Перечисление.ТипыСобытий.СообщениеSMS)
И СообщениеSMS.ВходящееИсходящееСобытие = ЗНАЧЕНИЕ(Перечисление.ВходящееИсходящееСобытие.Исходящее)
СГРУППИРОВАТЬ ПО
СообщениеSMS.ДокументОснование) КАК СообщенияSMS
ПО ДокументЗаказПокупателя.Ссылка = СообщенияSMS.ДокОснование}
//--
{ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ГрафикВыполненияЗаказов КАК ГрафикВыполнения
ПО ДокументЗаказПокупателя.Ссылка = ГрафикВыполнения.Заказ
Добавим колонки на форму списка
==== Редактирование роли "Базовые права УНФ" ====
Для роли "Базовые права УНФ" добавим право на чтение и просмотр к:
* регистрам "eComm_СтатусыЭкспрессНакладных", "eComm_ЭкспрессНакладныеСпискаЗаказов"
* документу "eComm_ЭкспрессНакладная"
==== Редактирование формы "ФормаСообщенияSMS" документа "Событие" ====
=== Метод "ОтправкаSMSНастройкиВыполнены" ===
Приведем код к следующему виду:
ПоказатьОповещениеПользователя(НСтр("ru='SMS успешно отправлено';uk='SMS успішно відправлено'"), ПолучитьНавигационнуюСсылку(Объект.Ссылка), Строка(Объект.Ссылка), БиблиотекаКартинок.Информация32);
Оповестить("СообщениеSMSОтправлено"); //++
Закрыть();
==== Расширяем определяемый тип "ПредметШаблонаСообщения" типом "ДокументСсылка.eComm_ЭкспрессНакладная" ====
===== Исправление ошибок подсистемы "Отправка SMS TURBO" =====
Если Вы используете провайдера TURBO SMS, тогда Вам, вероятно, понадобится исправить ошибки типовой конфигурации.
==== Редактирование табличной части "Участники" документа "Событие" ====
В реквизите табличной части "Участники" документа "Событие" увеличиваем длину реквизита "ИдентификаторСообщения" до 36 символов
==== Редактирование формы "ФормаСообщенияSMS" документа "Событие" ====
=== Метод "ВыполнитьОтправкуSMS" ===
Приведем код к следующему виду:
//++
//РезультатОтправки = ОтправкаSMS.ОтправитьSMS(МассивНомеров, Объект.Содержание, Объект.ИмяОтправителяSMS, ОтправлятьВТранслите);
РезультатОтправки = ОтправкаSMS.ОтправитьSMS(МассивНомеров, Объект.Содержание, ?(ЗначениеЗаполнено(Объект.ИмяОтправителяSMS),Объект.ИмяОтправителяSMS, Неопределено) , ОтправлятьВТранслите);
//--
==== Редактирование модуля "ОтправкаSMSЧерезTURBO" ====
[[small_business_1_6_21_3|Для конфигураций Business Automation Software for small company версии 1.6.21.3 и выше]]\\
[[small_business_other|Для остальных конфигураций УНФ, Управление швейным предприятием, BAS for small company версии до 1.6.21.3]]
В случае использования только модуля новой почты (без подключения укрпочты и др. перевозчиков) допускается сохранение города / отделения доставки в карточке контрагента
[[delivery_designer_unf_contr|Реквизиты доставки в карточке контрагента УНФ / SmallBusiness]]
===== Допрацювання механізму відправки SMS для можливості відправки в Viber =====
У випадку розширення файлу поставки функціоналом відправки в Viber додатково необхідно внести зміни в типову конфігурацію.
==== Додавання реквізиту "ТекстViber" в документ "Событие" ====
^ Им'я реквізиту ^ Синонім ^ Тип ^
| ТекстViber | Текст (Viber) | Строка (Необмежена) |
==== Редагування форми "ФормаСообщенияSMS" документа "Событие" ====
Відобразимо на формі реквізит "ТекстViber"
Положення заголовка: Ліворуч
Многострочный режим: Так
Видимість: Ні
{{ :vibersms.png?direct&600 |}}
Приведемо код методу "ВыполнитьОтправкуSMS" до вигляду:
//++
//РезультатОтправки = ОтправкаSMS.ОтправитьSMS(МассивНомеров, Объект.Содержание, ИмяОтправителяSMS, ОтправлятьВТранслите);
Если ЗначениеЗаполнено(УчетнаяЗапись) Тогда
СтруктураНастроек = eCommДоставкаСервер.Настройки(УчетнаяЗапись);
Если СтруктураНастроек.Настройки.Свойство("ИспользоватьГибриднуюViberОтправку")
И СтруктураНастроек.Настройки.ИспользоватьГибриднуюViberОтправку = Истина Тогда
РезультатОтправки = Обработки["eComm_ОтправкаСообщений"].ОтправитьСообщениеViber(МассивНомеров, Объект.ТекстViber, Объект.Содержание);
Иначе
РезультатОтправки = ОтправкаSMS.ОтправитьSMS(МассивНомеров, Объект.Содержание, Объект.ИмяОтправителяSMS, ОтправлятьВТранслите);
КонецЕсли;
Иначе
РезультатОтправки = ОтправкаSMS.ОтправитьSMS(МассивНомеров, Объект.Содержание, Объект.ИмяОтправителяSMS, ОтправлятьВТранслите);
КонецЕсли;
//--
Додамо в кінці методу "ПриСозданииНаСервере" код:
//++
Если Параметры.Свойство("УчетнаяЗапись", УчетнаяЗапись)
Или ЗначениеЗаполнено(Объект.ТекстViber) Тогда
Элементы.ТекстViber.Видимость = Истина;
КонецЕсли;
//--
==== Додавання реквізиту "ШаблонViber" в довідник "ДействияРабочегоПроцесса" ====
^ Им'я реквізиту ^ Синонім ^ Тип ^
| ШаблонViber | Шаблон (Viber) | СправочникСсылка.ШаблоныСообщений |
Відобразимо на формі реквізит "ШаблонViber"
{{ :viberproces.png?direct&600 |}}