ОБСУЖДЕНИЕ

Не выходит получить данные из документа через Ole

6 ответов 5 тыс.
AI-выжимка обсуждения скоро

Краткие тезисы обсуждения со ссылками на ключевые ответы появятся здесь.

Автор темы
Формирую в 1С такой запрос, проверей в Lotus отрабатывает на ура, а через OLE не в какую :angry:

MSScript.language= "vbscript";

Текст= "
|Function GetStatusOfDoc()
| Set Session= CreateObject(""Notes.NotesSession"")
| Set DB = Session.GetDatabase( """ + БД.Сервер.Наименование + """, """ + БД.Наименование + """)
| Set Doc= DB.GetDocumentByUNID("""+ LNDocACC + """)
| GetStatusOfDoc = Doc.ContractStatus(0)
|End Function";

GLM= MSScript.Run("GetStatusOfDoc");
 
а чего сразу не работать с лотусом без MSScript.language= "vbscript" ?
 
Нельзя так делать GetStatusOfDoc = Doc.ContractStatus(0)
Надо GetStatusOfDoc = Doc.GetItemValue("ContractStatus")(0)
 
Medevic
Это что, такое ограничение при работе через OLE?
 
Omh
Ну как сказать. У объекта Doc нет свойства или метода ContractStatus. :angry:


Т.е. синтаксис Doc.ContractStatus - это лотусная фишка.
 
Ну вот и я про это же.
Можно сделать вывод, что dot-notation = зло!
Хорошо уже пару лет, как переучился на методы вместо точки.
 
Народ: Ошибка выполнения Microsoft vb script: Несоответствие типа: 'Doc.GetItemValue(...)' :angry:
 

Статистика тем

Создано
Guest,
Последний ответ от
Guest,
Ответы
6
Просмотры
4 993