Изменения

Перейти к: навигация, поиск

Дополнительные возможности

5051 байт добавлено, 15 март
Речь диктора
'''OnBeforePlanning''' - событие перед планированием одного или нескольких отправлений на курьера. Содержит %сode% - код курьера, %AddressCodes% - код(ы) планируемых корреспонденций.
 
'''OnAfterPlanning'''- событие после планирования планированием одного или нескольких отправлений на курьера. Содержит %сode% - код курьера, %AddressCodes% - код(ы) фактически запланированных корреспонденций.
'''DAILY''' - задание выполняемое один раз в день
'''OnBeforeClientSave''' - событие срабатывает перед сохранением изменений в карточке клиента. Код выполняется не в транзакции и есть возможность показывать диалоговые окна. В качестве параметров переданы %code% (содержит код клиента) и объект fieldlist (полный аналог addressrecord в доп. услугах), который содержит ещё не сохранённую информацию о карточке клиента, а так же все её пользовательские поля. Если результат функции -1, то происходит отмена сохранения без ошибки (abort).
 
'''OnAfterClientSave''' - событие срабатывает после сохранения изменений в карточке клиента. Код выполняется в транзакции. В качестве параметров переданы %code% (содержит код клиента) и объект fieldlist (полный аналог addressrecord в доп. услугах), который содержит сохранённую информацию о карточке клиента, а так же все её пользовательские поля с предыдущими значениями, которые можно получить через функцию _Former('VarCode', значение, 'VarValue')
'''OnBeforeBasePutCheck''' - событие срабатывает при проставлении галки на вкладке срочных заказов. Код выполняется не в транзакции и есть возможность показывать диалоговые окна. В параметре <nowiki>%code%</nowiki> указан код срочного заказа, а в параметре <nowiki>%BasePutCheckType%</nowiki> указан тип проставления: 0 - если галка, 1 - если плюс. Если результат функции -1, то отмена выполняемой функции (abort).
 
'''OnAfterCreateSpecialSMA''' - событие срабатывает после создания нового АПД для клиента. Код выполняется вне транзакции, потому есть возможность показывать диалоговые окна. В качестве единственного параметра %code% передается код созданного АПД.
== Настройка документов ==
'''OnPaintSMAColumns''' - вызывается при прорисовке таблицы в форме списка АПД/АПК. В функцию передается DataSet, содержащий поля таблиц SendMoneyAct и Clients, а так же пользовательские поля клиентов, называющиеся ufX, где X - номер поля (в статусах). Функция должна возвращать строку следующей структуры:
Поле1_таблицы, Цвет_фона, Поле2_таблицы, Цвет_фона и т.п. Возврат нечетного числа параметров эквивалентен возврату пустой строки (цвет не меняется) '''CustomZPDetail''' - кастомное дополнение к детализации зарплаты (Специальная надбавка). Вызывается из скриптовой детализации зарплаты. Предназначено для расчета и вывода в детализацию значения какой-либо специальной надбавки, определенной пользователем. Входящие параметры: %code% - код платежа в таблице kurier_pays, %kurier% - код курьера. Возвращает строку, где через запятую указаны Название надбавки и ее значение. Если эта строка не содержит двух параметров - ничего не выводится..
== Настройка вида маркера ==
'''MapObjectFigure''' - Доп. возможность позволяет установить вид маркера на карте. Результат определяет фигуру: 1 - перевернутый треугольник(острым концом вниз), 2 - треугольник, 3 - увеличенный перевернутый треугольник(острым концом вниз), чтобы квадрат не мог его перекрыть, 4 - квадрат, 5 - ромб, все остальное круг. Ромб поддерживается с версии 960.<br/>
Например:
if(table2map.zabor, 2, if(StrDateToFloat(table2map.DatePeriod) = $PlanDate, 3, 4))
Выводит треугольник, если отправление - забор. Иначе - если дата план отправления равна дате, на которую планируется - увеличенный перевернутый треугольник, иначе - квадрат.
'''MapObjectColor''' - Доп. возможность позволяет установить цвет маркера на карте.
if((table2map.kurier<20)*(StrDateToFloat(table2map.DatePeriod) = $PlanDate), 16753920, $color)
Не запланированные отправления на текущий день будут отображаться выбранным цветом, иначе - цветом по-умолчанию.
 
 
== Речь диктора ==
 
'''OnGivnVoice''' - выполняется после изменения статуса выдачи. Параметр <nowiki>%code%</nowiki> содержит код выдачи, <nowiki>%State%</nowiki> содержит код устанавливаемого статуса, <nowiki>%OldState%</nowiki> - код старого статуса (0 если не было). Позволяет отключать стандартный звук ОК, если возвращает не 0.
 
'''OnDashboardManifestVoice''' - выполняется после сканирования адреса в интерфейсе приёма манифестов. Параметр <nowiki>%code%</nowiki> содержит код корреспонденции. Позволяет отключать стандартную диктовку программой (код курьера, вес и т.д.), если возвращает не 0.
== Настройка мобильного приложения ==
<source lang="sql">
<?>
rem(2023-05-16 Подключение к геокодеру далли, тикет 75769); set($response, HTTPPOST('http://x.wizbox.ru/AhanterCleanseAddressXXXXXXXX',
'{"query":'+ FormatTextJSON($address)+ '}',
'','','','',
, error('Пришел пустой ответ от геокодера')
);
</source>
 
'''OnFilterAddressRecalc''' - Позволяет отфильтровать коды адресов, для которых можно пересчитать стоимость. Событие происходит перед расчетом стоимости доставки из интерфейса программы для: актов, счетов, заказов, и т.д. Не работает для пересчета запускаемого из самой карточки корреспонденции.
%codes% - коды адресов для пересчета стоимости доставки. Формат: (1,2,3,...). %RecalcUserCode% - код пользователя запустившего пересчет (актуально для отложенных пересчетов).
Функция должна вернуть коды адресов, допущенных к пересчету в формате: (1,2,3,...)
 
<source lang="sql">
<?>
rem('2023-12-04 Sergey. Отключаем перерасчет стоимости доставки у корреспонденций в статусе - проверено,
если у пользователя нет права Счета-изменять. Тикет 79954.
Блокировка работает в связке с тикетом 77995.');
new('TSelfADO', 'DB');
DB.OPEN('SELECT a.code FROM courier.address a
LEFT JOIN courier.users u ON u.code=%RecalcUserCode%
LEFT JOIN courier.`userrules` ur ON ur.`GroupId`=u.grup AND ur.`RuleType`=1 AND ur.newruleid =78 -- RSA
WHERE ((a.state1<>8) OR (a.state1=8 AND ur.state="T")) AND a.code in %code%');
DB.ParseForIn('CODE')
</source>
44
правки

Навигация