Исключение объектов из очереди импорта#
Исключает из очереди импорта входящие сообщения, содержащие указанный XML-тег.
Скрипт используется, когда в очередь импорта попали лишние объекты и нужно временно отключить их обработку, чтобы пропустить нужные сообщения. В примере отключаются сообщения контура ImportSynchroCircuit, которые содержат тег <Eam_Work>.
Место применения: Сервис > Инструменты > Выполнить JEXL-скрипт
Внимание
В текущем виде скрипт содержит захардкоженные значения ImportSynchroCircuit и <Eam_Work>. Перед использованием замените их на актуальный контур и XML-тег.
Тип: JEXL-скрипт
var circuitName = 'ImportSynchroCircuit';
var idCircuit = Rpl_CircuitApi.findByMnemoCode(circuitName);
var result = sql(`
SELECT r.id AS id
FROM Rpl_IntXmlInMsg r
WHERE r.idcircuitunassigned = ` + idCircuit + `
AND r.idIntSession is NULL
AND r.bIsDisabled = 0
ORDER BY r.nOrder DESC
`).asList();
for (r : result) {
@begin {
var rop = Rpl_IntXmlInMsgApi.load(r.id.toLong());
var msg = Rpl_IntXmlInMsgApi.getStringFromFileByUtf8(rop);
if (msg.contains("<Eam_Work>")) {
Rpl_IntXmlInMsgApi.setbIsDisabled(rop, 1B);
}
session.commit();
} @exception function(exp) {
};
}