Добрый день!
Как стартовать (и можно ли вообще) БП при получении нового емейла? На событии AfterPost датасета мейла похоже ничего не работает. Не совсем понимаю как работает синхронизация с аутлуком, поэтому не знаю куда копать.
Жду помощи.
Нравится
Добавление писем выполняется посредством isq_MailMessage.
Чтобы решить Вашу задачу обратите внимание на скрипт scr_MSOutlookLibrary, а именно функцию function SaveMailItem(MailItem, Options).
В какой момент выполняется эта функция? И куда код лучше там вставить? Вставлял после кода:
[javascript]
try {
if (!IsDatasetEmpty(ContentDataset)) {
ContentDataset.Edit();
if (ContentField) {
ContentField.LoadFromFile(FileName);
ContentDataset.Post();
}
}
} finally {
ContentDataset.Close();
ApplyDatasetIDFilter(ContentDataset, null, false);
}
[/javascript]
и в конец функции, но мой код не выполняется.
Вот, что вставлял (тестовый код):
[javascript]
var TaskDataset = Services.GetNewItemByUSI('ds_Territory');
TaskDataset.Open();
TaskDataset.Append();
TaskDataset('Name') = 'TestTestTestTest';
TaskDataset.Post();
TaskDataset.Close();
[/javascript]
Для реального кода нужно получить ID письма, я думаю это MessageID
Попробуйте прописать логику после строки
[javascript]
var MessageID = SaveMailItemToDatabase(MailItem, Options.IsReceiving);
[/javascript]
Для проверки поставила отладчик, он отрабатывает при интеграции письма в систему.
А когда вообще срабатывает это событие, не на открытие грида мэйлов?
Я имел ввиду в какой момент происходит интеграция писем в Terrasoft
Интеграция происходит в двух случаях:
- вручную: при вызове команды интеграции в MS Outlook;
Здесь отрабатывает логика конфигурации.
- автоматически: при установленном свойстве "Автопривязка сообщений".
MS Outlook отправляет сообщение ядру, ядро его принимает и вызывает процедуру конфигурации.
Добрый день!
А из-за чего может не обновляться этот скрипт? Т.е. я изменил скрипт, но при выполнении выполняется старая версия, будто и не изменял ничего.
Очистите Cache, если не поможет, нужно проверять с отладчиком.