v8: Запуск по OLE клиента Lotus Notes из 1С 8.х Ключевые слова: Запуск OLE Lotus Notes
1С 8.0 поддерживает COM-соединение, поэтому создание объекта делается командой
ЛотусСессия = Новый COMОбъект( "Lotus.NotesSession" );
Если ЛотусСессия = Неопределено Тогда
ТекстОшибки = "Не установлен Lotus Notes !";
Возврат Неопределено;
КонецЕсли;
запуск самого входа в сессию производится через
ЛотусСессия.Initialize( Пароль );
надо учитывать что COM-соединение делает по последнему логину, по которому пользователь запускал клиент Lotus Notes (имя id-файла последнего логина храниться в служебном файле notes.ini в строке KeyFileName=...)
если Lotus-клиент допустил переданный пароль, тогда объект ЛотусСессия заполняется служебными данными - например
ПользовательЛотуса = ЛотусСессия.CommonUserName;
через него доступны и другие свойства и методы, которые обычно используюся при программировании в Lotus на языке LotusScript
например - получить ссылку на базу
НекаяБД = ЛотусСессия.GetDataBase( ИмяСервера, ИмяФайлаБазы );
получить ссылку на вид
НекийВид = НекаяБД.GetView("AllDocs");
записать документ
ЛотусДок.Save( Истина, Ложь );
есть правда одна особенность - нельзя обращаться к полям напрямую:
ЗначениеПоляФорма = ЛотусДокумент.Form(0)
надо это делать через методы объекта COMSafeArray
ЗначениеПоляФорма = ЛотусДокумент.GetFirstItem( "Form" ).GetValue(0);
****
быстрый отбор документов по условию делается так
ДатаОтбора = ЛотусСессия.CreateDateTime( "01/01/1900 01:00:00 PM" );
Колво = 0 ;
КоллекцияДокументов = БДЛотуса.Search( ФильтрОтбора, ДатаОтбора, Колво)
|