w-master007 Posted March 11, 2007 Report Share Posted March 11, 2007 Всем привет. Срочно нужна помощь! Вопрос 1. У всех стандартно установлена БД BIBLIO, она находится по этому адресу: "C:\Program Files\Microsoft Visual Studio\VB98\BIBLIO.mdb" В прикеплённом файле находится код проекта. Смысл программы заключается в том, чтобы вывести поля таблицы Authors в соответствующих элеентах формы. При запуске програмы, происходит ошибка: "Несоответствие типов". Незнаю что и делать, поэтому обращаюсь к вам. Вопрос 2. Не могу добавить поле FOTO в БД BIBLIO с помощью Access, в смысле не активна кнопка "Сохранить". При открытии БД в Access выводится диалоговое окно, что типо БД создана в более ранней версии и нужно её преобразовать, но такогобыт не может, у ня ОФИС - 2003. Преобразовывал бесполезно. А вот в БД NWIND всё нормально сохраняется: "C:\Program Files\Microsoft Visual Studio\VB98\NWIND.mdb" Это поле необходио для вывода картинок в этом же проекте в элементе OLE. Может можно как добавить поле Foto c типом поля - поле объекта OLE в VB, записав программный код. Option Explicit Dim vldmsg(4) As String 'объявить масив сообщений Private Sub cmdRestore_Click() Data1.UpdateControls 'восстановить значение текстового поля End Sub Private Sub cmdupdate_Click() Data1.UpdateControls End Sub Private Sub Form_Load() OpenDB 'открыть БД,установить динамический набор BindControls 'связать элементы управления с полями данных makevldmsgarray End Sub Public Sub OpenDB() Dim bdNAME As String Dim cdbNAME As String Dim ctb1NAME As String Dim BExclusive As Boolean 'объявить логическую переменную Dim breadonly As Boolean Dim dbDenyWrite As Boolean cdbNAME = "C:\Program Files\Microsoft Visual Studio\VB98\BIBLIO.mdb" ctb1NAME = "Authors" 'указать на таблицу данных BExclusive = True 'установить эксклюхивный режим breadonly = True 'установить режим только для чтения Data1.DatabaseName = cdbNAME 'задать свойство DatabaseName Data1.RecordSource = ctb1NAME 'задать свойство RecordSource Data1.Exclusive = BExclusive Data1.ReadOnly = dbDenyWrite + breadonly Data1.Refresh 'обнорвить совйства элемента data End Sub Public Sub BindControls() Dim cfield1 As String Dim cfield2 As String Dim cfield3 As String cfield1 = "Author" cfield2 = "Au_ID" cfield3 = "Year Born" Text1.DataField = cfield1 Label1.DataField = cfield2 Check1.DataField = cfield3 End Sub Public Sub Data1_Reposition() MsgBox "перемещение указателя..." End Sub Public Sub Data1_Validate(Action As Integer, save As Integer) MsgBox vldmsg(Action) 'выдать сообщение в зависимости от действия пользователя End Sub Public Sub makevldmsgarray() vldmsg(vbDataActionMoveFirst) = "MoveFirst" vldmsg(vbDataActionMovePrevious) = "MovePrevious" vldmsg(vbDataActionMoveNext) = "MoveNext" vldmsg(vbDataActionMoveLast) = "MoveLast" End Sub Если кто может, оставьте мыло, я пришлю исходник. Жалко нет на форуме функции добавления файлов Link to comment Share on other sites More sharing options...
neic Posted March 11, 2007 Report Share Posted March 11, 2007 Прошёл глазами весь код, вроде всё ОК. Кидай исходник сюда: f-artyom@yandex Тема: Исходник из Софтодрома. Link to comment Share on other sites More sharing options...
w-master007 Posted March 11, 2007 Author Report Share Posted March 11, 2007 Спасибо neic, что откликнулся. Отправил исходник Link to comment Share on other sites More sharing options...
neic Posted March 15, 2007 Report Share Posted March 15, 2007 (edited) Привет!!! НА первый вопрос ответ(Вопрос наверное даже) : что ты хочешь сделать этой строчкой: Check1.DataField = cfield3?НА сколько я знаю Check1 принимает логические(булевские данные) данные (True, False) копай в эту сторону. На второй вопрос : А ты пробовал 97офисом преобразовывать? При открытии БД в Access выводится диалоговое окно, что типо БД создана в более ранней версии и нужно её преобразовать, но такого быть не может Как не может? VB6 создан в 98году, соотвественно офис на то момент был самым последним 97... Edited March 15, 2007 by neic Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now