Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / св-ва БД, ошибка 3270 / 9 сообщений из 9, страница 1 из 1
22.02.2017, 15:37
    #39409196
Игортан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
св-ва БД, ошибка 3270
Господа, приветствую!

Есть нерешенный вопрос.
В проекте, резко, перестало работать...даже не знаю, что точно.

С чего началось.
Решил импортировать все объекты в новую бд. Все прошло успешно.
Для информации, проделывал это несколько раз и с РАЗНЫМИ проектами...результат тот же.
И так.
После импорта, иду в редактор vba, и компилирую проект. Все ок.
Закрываю БД. Открываю бд и получаю ошибку 3270. Свойство не найдено.
Ну как бы понятно на что ругается.
На старте устанавливаются свойства БД. Спецклавиши, статусбар и т.п. НО в этом месте есть обработка ошибки, да и код, стандартнее некуда
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
Function ChangeProperty(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer
    Dim dbs As Database, prp As Property
    Const conPropNotFoundError = 3270

    Set dbs = CurrentDb
    On Error GoTo Change_Err
' бьет ошибку в следующей строке
    dbs.Properties(strPropName) = varPropValue
    ChangeProperty = True

Change_Bye:
    Exit Function

Change_Err:
    If Err = conPropNotFoundError Then  ' Свойство не найдено.
        Set prp = dbs.CreateProperty(strPropName, varPropType, varPropValue)
        dbs.Properties.Append prp
        Resume Next
    Else
        ' Неизвестная ошибка.
        ChangeProperty = False
        Resume Change_Bye
    End If
End Function


т.е. ошибку не обрабатывает а тупо выбрасывает в редактор...

Думал порушился оффис...И даже переустановил...ситуация не меняется.
При этом! старые файлы из проектов работают нормально.
Все это наблюдается только для вновь созданных БД и импортированных в них всех объектов.
Пробовал создавать и через Акс и просто через контекстное меню. Результат один...

Поискав, видел советы, выставить DAO. ... перед свойствами переменных для них.
Не помогает.

Увидел одну особенность....
в коде теперь при написании DoCmd.Close строка автоматом меняется на DoCmd.CLOSE
И мне кажется это не спроста...
Кто встречался с такой проблемой?
Подскажите...
...
Рейтинг: 0 / 0
22.02.2017, 15:46
    #39409203
Predeclared
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
св-ва БД, ошибка 3270
Проверь ссылку на библиотеку DAO в референсах.
...
Рейтинг: 0 / 0
22.02.2017, 16:07
    #39409216
Игортан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
св-ва БД, ошибка 3270
Predeclared,

Вот, что значит обратиться к коллективному разуму...
Спасибо за решение проблемы!

поотключал вообще все библиотеки, кроме первых трех. Я как понимаю основных.
И подключил DAO 3.6
ПОМОГЛО!!!!
Кстати, при попытке выбрать эту библиотеку был конфликт с др библиотекой -
MS Office 12.0 Access DataBase engine Object Library
.. как то неожиданно для меня
и почему в "старых" файлах все работает молча....
и ведь я ручками ее не подключаю при создания файла, значит она автоматом подключается при создании файла
Можете объяснить? или это из неизведанного?
...
Рейтинг: 0 / 0
22.02.2017, 16:10
    #39409220
св-ва БД, ошибка 3270
Игортан, если вы получаете сообщение об ошибке, значит обработчик ошибок не работает.
В каком модуле находится процедура? В проекте VBA - Tools - Options есть группа флажков - реакция на ошибки. Что там? Попробуйте варианты.
...
Рейтинг: 0 / 0
22.02.2017, 16:18
    #39409226
Predeclared
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
св-ва БД, ошибка 3270
в 12 версии Access и выше описания библиотеки DAO доступны (через? ) описание библиотеки
MS Office 12.0 Access DataBase engine Object Library.
В нем отдельно подключать DAO не нужно.
...
Рейтинг: 0 / 0
22.02.2017, 16:18
    #39409227
Игортан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
св-ва БД, ошибка 3270
Анатолий ( Киев ),

Модуль паблик...
по галкам в опциях, я их сто лет не трогал..
Сейчас создал новый чистый файл бд, просто так.
MS Office 12.0 Access DataBase engine Object Library - в подключенных...
...
Рейтинг: 0 / 0
22.02.2017, 16:24
    #39409235
Игортан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
св-ва БД, ошибка 3270
Predeclared,

А сейчас в "отремонтированной" ))) бд.
Отключил дао и подключил объект либрери
и все работает....
может на этапе создания, криво подключается....
неисповедимы пути мелкомягких....
...
Рейтинг: 0 / 0
23.02.2017, 14:06
    #39409569
Игортан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
св-ва БД, ошибка 3270
Игортан,

А вот и рано радовался...
Сегодня появилось время на обкатать.
При создании новой бд автоматом подключается 4 библиотеки.
из них
MS Office 12.0 Access d ataBase engine Object Library
обратите внимание не
MS Office 12.0 Access D ataBase engine Object Library
отключаю.
по новой открываю окно подключения библиотек, есть MS Office 12.0 Access DataBase engine Object Library
ставлю галку. Закрываю окно.
Открываю снова - MS Office 12.0 Access dataBase engine Object Library.

Чего уперся.
вчерашняя проблема не ушла. На том конкретно файле сработало...

Причем. Не дает устанавливать какие либо свойства вообще.

Ладно.
Отключил эту MS Office 12.0 Access DataBase engine Object Library, подключил DAO 3.6
Опять ошибка.
Смотрю - а все свойства установились, кроме AllowBypassKey

Скачал у МС отдельно библиотеку MS Office 12.0 Access dataBase engine Object Library, правда ENG
установил в папку по умолчанию...проблему не решил...

Есть у кого какие идеи?

Для развития мысли. Самое последнее, что пытался поставить, это
Винда 7 лиц, распространяющаяся через ВУЗы.
На виртуалку ставиться не хотела однозначно. Не авзапускаемый msi
Я ее стартанул и ...в общем процесс остановился где то по середине и я установку остановил.
Следов в системе, кроме самого установщика не видно...
Что мог порушить?
...
Рейтинг: 0 / 0
24.02.2017, 14:54
    #39409933
Игортан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
св-ва БД, ошибка 3270
Анатолий ( Киев ),

Пишу, может кому пригодится.

Анатолий, Вы писали о самом правильном направлении.
Раз ошибка не обрабатывалась...значит что то было в нем.

До этого успел сделать еще одну весч.
обнаружил, что при переустановке оффиса папка - C:\Program Files\Common Files\Microsoft Shared\OFFICE12
не удалялась и не чистилась вовсе. При повторной переустановке я эту папку переименовал и поставил оффис по новой. По факту она создалась по новой, это понятно.
После этого, пробовал создавать бд по шаблонам из самого акса.
Создал несколько, поиграл свойствами. Та же ошибка... думаю кранты.

Загуглил все таки вашу мысль.
Первая же ссылка - Почему не работает On Error Resume Next?
дала ответ по галкам. Смотрю в шаблонной базе. Галка не там. Поставил как надо.
Все отработало ок.
Я в "старые новые базы" полез. Они бьют ошибку... галка стоит как надо.
Создаю новую, импортирую в нее все, все ОК!
По ходу старые бд были криво созданы...
Специально создал несколько новых баз с вариантами сжатия, автообновления имен, начальной формы...
Так, на всякий.
Все нормально.


Думаю, кардинально вопрос решился под первым спойлером. Под вторым, попытка это доказать самому себе.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / св-ва БД, ошибка 3270 / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]