У меня проблема при выполнении запроса на добавление в Microsoft Access из Microsoft Outlook.
Цель:
На уровне Microsoft Outlook я хочу выполнить запрос на добавление, расположенный вБаза данных Microsoft Access, которая создаст запись в «журнальной» таблице, содержащей информацию об отправленной электронной почте. (добавление инициируется событием «Application_ItemSend»)
Проблема:
Когда я запускаю запрос, Access добавляет только 2 из 7 полей: переменная "strSenderEmail" и функция "сейчас () ", который вставляется в запрос -> тем самым я имею в виду, что в таблице" Журнал "у меня есть только информация об отправителе и дате, но тема, получатель и т. д. пусты.
Дополнительная информация:
- имена параметров правильные -> У меня нет информации, что что-то неверно или отсутствует
- все параметры введены
- я попытался передать параметр поочередно: "qdf.parameters (1)= test "но не работает
- если я запускаю этот запрос из доступа и вставляю параметры" из рук ", все работает правильно.
Вопрос:
Почему мой запрос не добавляется правильно? В качестве альтернативы я попробую команду SQL для вставки данных или добавления набора записей в таблицу.
Код функции:
strBackendPath - path of backend access
Qapp_001 - name of the append query in access
Set dbs = DBEngine.OpenDatabase(strBackendPath) 'set connection with backend
Set qdf = dbs.QueryDefs(Qapp_001) 'set update merged processes query
<br>
qdf![strSenderEmail] = GetOriginalSenderAddress(objMailItem) 'this is external function, this variable is actually working properly -> information are added in new record
qdf!strReceiverEmail = "test1" 'insert receiver
qdf!strSubject = "test2" 'subject of the e-mail
qdf!struserUID = "test3" '(Environ$("Username"))
qdf!bytCommunicationType = 1 'define type of communication
qdf!bytStatus = 1 'define status
qdf.Execute 'run append query
<br>
Set qdf = Nothing 'clear query
Set dbs = Nothing 'clear database
Столбцы в таблице журнала:
ID SenderEmail ReceiverEmail Subject PreparationDateAndTime userUID CommunicationType
Код SQL запроса на добавление (из Access):
PARAMETERS
strSenderEmail LongText, strReceiverEmail LongText, strSubject LongText, struserUID Text ( 255 ), bytCommunicationType Byte, bytStatus Byte;
INSERT INTO
Tbl_02_Log ( SenderEmail, ReceiverEmail, Subject, PreparationDateAndTime, userUID, CommunicationType, Status )
SELECT
[strSenderEmail] AS Expr1, [strReceiverEmail] AS Expr2, [strSubject] AS Expr3, Now() AS Expr4, [struserUID] AS Expr5, [bytCommunicationType] AS Expr6, [bytStatus] AS Expr7;
Спасибо за вашу помощь.