-Поиск по дневнику

Поиск сообщений в rss_sql_ru_access_programming

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 16.03.2006
Записей:
Комментариев:
Написано: 4


Access 2010 - Самопризвольное изменение запроса.

Четверг, 19 Марта 2015 г. 23:13 + в цитатник
Приветствую участников форума. Вот, столкнулся с таким явлением...
Дело в следующем: Есть форма, на форме кнопка, к кнопке привязан код (создавался мастером. Мною добавлены вызовы функций LoadFromDOS() и LoadUnloaded(), ну и MsgBox - чисто в качестве паузы:

Private Sub Кнопка45_Click()
On Error GoTo Err_Кнопка45_Click

    Dim stDocName As String
    stDocName = ChrW(1042) & ChrW(1086) & ChrW(1076) & ChrW(1086) & ChrW(1087) & ChrW(1086) & ChrW(1076) & ChrW(1098) & ChrW(1077) & ChrW(1084) & ChrW(32) & ChrW(1044) & ChrW(1086) & 

ChrW(1075) & ChrW(32) & ChrW(50) & ChrW(48) & ChrW(49) & ChrW(51)
    DoCmd.OpenQuery stDocName, acNormal, acEdit
    testvar = LoadFromDOS()
    MsgBox "loaded from dos"
    testvar = LoadUnloaded()
Exit_Кнопка45_Click:
    Exit Sub

Err_Кнопка45_Click:
    MsgBox Err.Description
    Resume Exit_Кнопка45_Click
    
End Sub

**************************************

Функции также создавались посредством конвертации макросов с небольшими изменениями "ручками":

Function LoadFromDOS()
On Error GoTo LoadFromDOS_Err
    DoCmd.RunSQL "delete * from autodox"
    MsgBox "Deleted OK"
    DoCmd.TransferText acImportDelim, "autodox_Spec1", "autodox", "\\Server\share\autodox.txt", False, "", 866
    DoCmd.RunSQL "update autodox set path = '#' & path & '#', CNA = ExtractNumber1(Contr)"

LoadFromDOS_Exit:
    Exit Function

LoadFromDOS_Err:
    MsgBox Error$
    Resume LoadFromDOS_Exit

End Function

**************************************
Function LoadUnloaded()
On Error GoTo LoadUnloaded_Err
    DayTail = Date & "_" & Time
    DayTail = Replace(DayTail, ":", "-")
    DayTail = Replace(DayTail, ".", "-")
    DoCmd.OutputTo acOutputQuery, "Unloaded_Auto", "ExcelWorkbook(*.xlsx)", "\\Server\share\Автоматика_Невнесённое_" & DayTail & ".xlsx", False, "", , acExportQualityPrint


LoadUnloaded_Exit:
    Exit Function

LoadUnloaded_Err:
    MsgBox Error$
    Resume LoadUnloaded_Exit

End Function

**************************************
' Запрос Unloaded_Auto:
SELECT * FROM autodox LEFT JOIN [дог водоподъем] ON autodox.CNA = [дог водоподъем].договор WHERE Код IS NULL ORDER BY 1;

Так вот, кнопочка отлично работает, НО, только один раз!
По окончании работы запрос Unloaded_Auto оказывается, мягко говоря, сильно урезанным - от

SELECT *;


ДО

SELECT * FROM autodox, [дог водоподъем] ORDER BY 1;


Пришлось вставить обновление перед каждым запуском:

CurrentDb.QueryDefs("Unloaded_Auto").SQL = "SELECT * FROM autodox LEFT JOIN [дог водоподъем] ON autodox.CNA = [дог водоподъем].договор WHERE Код IS NULL ORDER BY 1;",

Кто-нибудь сталкивался с подобным явлением?
Или, может, я что-то делаю не так?

С уважением, Андрей.

http://www.sql.ru/forum/1147882/access-2010-samoprizvolnoe-izmenenie-zaprosa


 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку