Руководство: Проверка индивидуальных скриптов на актуальность
Проверка индивидуальных скриптов на актуальность
Для работы в МТ версии 4.4.0
Проверить файлы расширений:
Перевести метафайл на новый формат. Подробнее: Метафайл
Открыть индивидуальные отчеты в МТ - они должны открываться без ошибок, если не открываются - то адаптировать
Проверить файлы с расширением html, содержат ли строку "jquery". Путь к нему должен быть таким - "{{libPath}}/libs/jquery.js"
Проверить файлы с расширением html, содержат ли строку "knockout". Путь к нему должен быть таким - "{{libPath}}/libs/knockout.js"
Проверить URI в JS-файлах. Теперь открытие документа на просмотр происходит по URI с добавлением "/view"
Например, URI stmobile://document/order должна быть переделана в stmobile://document/order/view. Документация по URI документов находится тут
Проверить экшены. Если содержат api.context.outletData - нужно адаптировать
Проверить, подключается ли в Data-скрипте (.js) библиотеки из каталога models
Раньше библиотеки лежали тут "../reports/2_routeandoutletreports/models/", теперь они лежат тут "models/"
Поэтому нужно поискать строку 'api.modules.include("путь_к_файлу")', если "путь_к_файлу" содержит слово "models", то возможно его нужно поменять.
Для самостоятельного исправления необходимо поправить .js файлы:
Поменять путь на соответствие формату: api.modules.include("models/имя_класса.js")
Проверить, актуализирован ли вид метафайлов модульных отчетов для соответствия новой системе модульности. Обновить используемые в HTML-файле скрипты. Подробности см. в разделе Модульные отчёты
Проверить, подключается ли в HTML библиотека underscore. Раньше лежала в libs/plugins теперь просто в libs. Кроме того, библиотека обновлена до версии 1.8.3, в связи с чем необходимо учесть возможные проблемы соместимости
Если скрипт использует какой-либо метод api.photo, возвращаемый структуру PhotoInfo, то исправьте получение пути до фотографии: устаревшее поле path заменено полем url и теперь нет необходимости "вручную" приписывать протокол
Проверить, подключаются ли в Data-скрипте файлы ordersRepository.js, salesRepository.js или viewersRepository.js. Раньше подключались относительно, теперь находятся в libs. Кроме того, salesRepository.js = ordersRepository.js, поэтому подключать необходимо последний
Проверить в скрипте наличие строки "args". Если есть, то адаптировать скрипт, иначе работать он не будет. Строку необходимо заменить на "api.context"
Если в скрипте есть строка "api.result.showMessage", то необходимо адаптировать скрипт, заменить на "api.result.isShow"
Если в скрипте используется "api.context.metaData", то необходимо адаптировать скрипт, заменить на "api.context.metaConfig"
Если в конфигурации присутствует скрипт на точку расширения itempostsave документа Заказ, необходимо адаптировать его, т.к. начиная с версии 67 в документе Заказ в товарах ЦО точка расширения срабатывает в том числе после автоматического разнесения товаров по дистрибьюторам
Для работы в МТ версии 4.4.7
Проверить, что в цикле for .. in не происходит явного присваивания значения в объявленную переменную. Т.е. for (var i = 0 in rows) вызовет ошибку. Следует
писать for (var i in rows).
Проверить, что в api.merch.doc.putRow в структуре DocumentRow не передается поле id
Для добавления\чтения значений Доп.Атрибутов строчной или заголовочной части документа Мерчандайзинг следует использовать api.merch.doc