8.х Обмен между 1С и Outlook

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Azamat, 15 май 2012.

  1. TopicStarter Overlay
    Azamat
    Offline

    Azamat Опытный в 1С

    Регистрация:
    29 июл 2011
    Сообщения:
    271
    Симпатии:
    0
    Баллы:
    26
    Есть такой код, который записывает данные из 1с в Outlook
    Код:
    //приложение
    Попытка
    Оле = Новый COMОбъект("Outlook.Application");
    Исключение
    Предупреждение("Не удалось создать запись в календаре событий в MS Outlook!");
    Возврат;
    КонецПопытки;
    
    //встреча
    Встреча = Оле.CreateItem(1);
    Встреча.Subject = Выборка.Наименование;
    Встреча.Start = Выборка.СрокИсполнения;
    Встреча.End = Выборка.СрокИсполнения;
    Встреча.AllDayEvent = ЦелыйДень;
    Встреча.ReminderSet = ВключитьНапоминание;
    Встреча.ReminderMinutesBeforeStart = Напоминание;
    Встреча.BusyStatus = 0;
    Встреча.MeetingStatus = 0;
    Встреча.Sensitivity = 2;
    Встреча.Save();
    с помощью метода Оле.CreateItem(1); - мы создаем новый объект, а как нам прочитать объект из Outlook?
  2. uza
    Offline

    uza 1С, VBA (EXCEL), VB (.NET + WEB)

    Регистрация:
    10 июл 2007
    Сообщения:
    1.845
    Симпатии:
    1
    Баллы:
    29
    Ну что то типа вот так
    Код:
    Sub TEST()
    Dim olApp As Outlook.Application
    Dim olNS As Outlook.NameSpace
    Dim olFld As Outlook.MAPIFolder
    Dim oM As Outlook.AppointmentItem
    Dim i As Integer
    Set olApp = Outlook.Application
    Set olNS = olApp.GetNamespace("MAPI")
    Set olFld = olNS.GetDefaultFolder(olFolderCalendar)
    Set oM = olFld.Items.GetFirst
    For i = 1 To olFld.Items.Count
    Set oM = olFld.Items(i)
    MsgBox (oM.Body)
    Next i
    End Sub
    Соответсвенно на языке одинэс это будет что то типа
    Код:
    Оле = Новый COMОбъект("Outlook.Application");
    olApp = Оле.Outlook.Application
    olNS = olApp.GetNamespace("MAPI")
    olFld = olNS.GetDefaultFolder(olFolderCalendar)
    oCalendar = olFld.Items.GetFirst 'прыжок на первое событие календаря
    For i = 1 To olFld.Items.Count
    oCalendar = olFld.Items(i)
    //получили запись в oCalndar
    //у него есть куча методов и св-в.
    Next i
  3. uza
    Offline

    uza 1С, VBA (EXCEL), VB (.NET + WEB)

    Регистрация:
    10 июл 2007
    Сообщения:
    1.845
    Симпатии:
    1
    Баллы:
    29
    http://msdn.microsoft.com/en-us/library/aa210899%28v=office.11%29.aspx вот справка по объекту
  4. TopicStarter Overlay
    Azamat
    Offline

    Azamat Опытный в 1С

    Регистрация:
    29 июл 2011
    Сообщения:
    271
    Симпатии:
    0
    Баллы:
    26
    Код:
    Оле = Новый COMОбъект("Outlook.Application");
    //поиск задач
    myNameSpace = Оле.GetNamespace("MAPI");
    myFolder = myNameSpace.GetDefaultFolder(9);
    ОбщееКоличество = myFolder.Items.Count;
    
    Для Счетчик = 1 По ОбщееКоличество Цикл
    oCalendar = myFolder.Items(Счетчик);
    
    Если oCalendar.Subject <> НаименованиеЗадачи Тогда
    Продолжить;
    Иначе
    Сообщить("Задача уже была выгружена: " + НаименованиеЗадачи);
    Прервать;
    КонецЕсли;
    вот так у меня все заработало))
Похожие темы
  1. nomad_irk
    Ответов:
    13
    Просмотров:
    1.687
Загрузка...

Поделиться этой страницей