我在使用win32com.client从Python连接Lotus Notes时遇到问题。
我使用以下代码:
import win32com.client
import csv # imports the csv module
import sys # imports the sys module
import re
notesServer = "AALMBX01/Server/..."
notesPass = "PASS"
#Connect to notes database on server
notesSession = win32com.client.Dispatch('Lotus.NotesSession')
notesSession.Initialize(notesPass)
db_name = 'mail\iizs.nsf'
db = notesSession.getDatabase(notesServer, db_name)
view = db.GetView("($All)")
doc = view.getFirstDocument()
我收到以下错误:
( - 2147352567,'发生例外。',(0,你' NotesSession',你'注意 错误:密码错误。 (密码区分大小写 - 请务必使用 正确的大小写。)'
还尝试将密码留空并禁用LN应用程序的密码请求#39;在界面中。使用空密码,我收到以下错误消息:
( - 2147352567,'发生例外。',(0,你' NotesDatabase',u'数据库 AALMBX01 / Server / ... !! mail \ iizs.nsf尚未打开'
我尝试了以下内容:
错误仍然相同。尝试将user.id复制到系统文件夹之一(system32) - 也没有帮助。
有什么建议吗?
答案 0 :(得分:0)
$leaves = DB::select("SELECT * FROM leaves WHERE emp_id=:emp_id AND status != 'Rejected' AND ((STR_TO_DATE(from_date, '%Y-%m-%d') BETWEEN ':from_date1' AND ':to_date1') OR (STR_TO_DATE(to_date, '%Y-%m-%d') BETWEEN ':from_date2' AND ':to_date2')) OR ((STR_TO_DATE(from_date, '%Y-%m-%d') <= ':from_date3') AND (STR_TO_DATE(to_date, '%Y-%m-%d') >= ':to_date3'))",
[
'emp_id'=> (int)$request->emp_id, 'from_date1'=>$request->from_date, 'to_date1'=>$request->to_date,
'from_date2'=>$request->from_date, 'to_date2'=>$request->to_date,
'from_date3'=>$request->from_date, 'to_date3'=>$request->to_date
]);
HTH !!
此外,发生在我身上的一个问题是网络驱动器 - 如果您的NOTES.INI文件包含网络路径,请尝试删除并在Python代码中添加它:
import win32com.client
import pywintypes
from win32com.client import Dispatch
from win32com.client import constants
notesSession = Dispatch('Lotus.NotesSession')
dir(constants)
dir(notesSession)
Password = 'S3cretP455w0rd'
Server = 'yourserver/yourapp' # yourserver = '' if local
scPath = 'view.nsf'
notesSession.Initialize(Password)