27.10.2008, 10:21 | #1 |
Участник
|
Всем Доброго времени суток!
Подскажите, плзз, если кто сталкивался: Как можно в Navision задать время напоминания выполнения задачи. При постановке задача в модуле CRM, происходит синхронизации с Outlook и она отображается Outlook. Мне необходимо задать время напоминания выполения задачи 10 утра. В outlook есть объект TaskItem.ReminderTime, а в Navision его уже нет... Надо сделать в 4ке, но если на 5ке легче, будем на 5ку переносить все... Спасибо! |
|
28.10.2008, 10:13 | #2 |
Участник
|
Примерно так:
Код: OutlApp Automation 'Microsoft Outlook 11.0 Object Library'.Application OutlTask Automation 'Microsoft Outlook 11.0 Object Library'.TaskItem TimeText Variant *************************** IF ISCLEAR(OutlApp) THEN CREATE(OutlApp); OutlTask := OutlApp.CreateItem(3); OutlTask.Complete := FALSE; OutlTask.Subject := 'Тема задания'; OutlTask.Body := 'Такая вот задача'; OutlTask.DueDate := 281008D; // Срок выполнения // Оповещение OutlTask.ReminderSet := TRUE; TimeText := '28.10.2008 10:30'; OutlTask.ReminderTime := TimeText; OutlTask.Save; CLEAR(OutlApp); |
|
29.10.2008, 13:31 | #3 |
Участник
|
Спасибо .Quattro. воспользовался Вашим кодом, от себя добавлю.
Если хотите назначить задачу другому пользователю добавьте следующий код: Код: OutlTask.Importance(2); // важно TimeText := FORMAT("Posting Date",0,'<Day,2>.<Month,2>.<Year4>') + ' 09:00'; OutlTask.Owner('Sender Name'); // из адресной книги OutlTask.Recipients.Add('Recipient Name 1'); // из адресной книги OutlTask.Recipients.Add('Recipient Name 2'); // из адресной книги OutlTask.Assign; OutlTask.Send; //OutlTask.Save; |
|
29.10.2008, 13:38 | #4 |
Administrator
|
самое лучшее спасибо - в рейтинге под аватаркой!
|
|
10.11.2008, 17:08 | #5 |
Участник
|
Спасибо за помощь!
Долго пробовала сама справиться, но не смогла... Поэтому, прошу у Вас помощи еще раз: Вы писали способ реализации для объекта: 'Microsoft Outlook 11.0 Object Library'.TaskItem, а в стандарте Navision задачи создается с помощью: 'NS Outlook Synchronization Handler'.OTask, а для данного объекта нет свойста ReminderSet.... Как быть, может кто подскажет: Как можно обратиться к созданной задаче, сделать ее объектом типа 'Microsoft Outlook 11.0 Object Library'.TaskItem и уже потом изменить свойство ReminderSet. Всем Спасибо.... |
|
11.11.2008, 11:22 | #6 |
Участник
|
Можно попоробовать через EntryID
Код: OutlApp Automation 'Microsoft Outlook 11.0 Object Library'.Application OutlNameSpace Automation 'Microsoft Outlook 11.0 Object Library'.NameSpace OutlTask Automation 'Microsoft Outlook 11.0 Object Library'.TaskItem ======================= IF ISCLEAR(OutlApp) THEN CREATE(OutlApp); OutlNameSpace := OutlApp.GetNamespace('MAPI'); OutlTask := OutlNameSpace.GetItemFromID(TaskItem.EntryID); |
|
11.11.2008, 12:25 | #7 |
Участник
|
Спасибо! Но у меня что-то не получается...
Я написа так: Код: OutlApp Automation 'Microsoft Outlook 11.0 Object Library'.Application OutlNameSpace Automation 'Microsoft Outlook 11.0 Object Library'.NameSpace OutlTask Automation 'Microsoft Outlook 11.0 Object Library'.TaskItem ======================= IF ISCLEAR(OutlApp) THEN CREATE(OutlApp); OutlNameSpace := OutlApp.GetNamespace('MAPI'); OutlTask := OutlNameSpace.GetItemFromID(format(TaskItem.EntryID)); OutlTask.ReminderSet := TRUE; OutlTask.Save; Отправила на печать format(TaskItem.EntryID) = "In Use" - это правильно? |
|
11.11.2008, 13:44 | #8 |
Участник
|
Это вы написали в КЮ 5073 в функции ProcessOutlookTask?
|
|
11.11.2008, 13:55 | #9 |
Участник
|
в КЮ 5073 в функции CreateTaskItem.
|
|
11.11.2008, 14:45 | #10 |
Участник
|
после строчки IF TaskItem.Save THEN BEGIN?
|
|
11.11.2008, 14:51 | #11 |
Участник
|
Да.
|
|