1

Тема: Заповнення Combobox(vb.net) із бд Access

Доброго вам дня.
На формі розміщений комбобокс. Базу даних виконав в Access. Написав код ,але в результаті дані в комбобокс не передаються. Де помилка?
Висилаю файл . В архіві є проект та файл Бази даних. Проект виконано на базі vb2010 Express.

Post's attachments

Combo.7z 32.49 kb, 313 downloads since 2015-11-08 

2 Востаннє редагувалося Itari (09.11.2015 07:29:18)

Re: Заповнення Combobox(vb.net) із бд Access

Пропустив ти відкриття набору:

acscmd.open();

 
Як воно в тебе взагалі не ругнулось не розумію...
Поставь його перед активаціей рідера.

Доречі: Я б запрошував так:

"select Виконавець from Таблица1

У твоєму випадку звісно.

Подякували: Юрій_1

3

Re: Заповнення Combobox(vb.net) із бд Access

Itari, я Вам вдячний за корегування, але я додав код І пише помилку "open не является членом"System.data.oledb.oledbCommand

Public Class Form1
    Sub fillcombo()

        strsql = "select * from Таблица1"

        Dim acscmd As New OleDb.OleDbCommand
      acscmd.open()
        acscmd.CommandText = strsql
        acscmd.Connection = acsconn

        acsdr = acscmd.ExecuteReader

        While (acsdr.Read())
            ComboBox1.Items.Add(acsdr("Виконавець"))
        End While

        acscmd.Dispose()
        acsdr.Close()
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Module1.connect()
        Me.fillcombo()
    End Sub


End Class

4 Востаннє редагувалося Itari (09.11.2015 21:15:14)

Re: Заповнення Combobox(vb.net) із бд Access

Ой щоб мене... Так сплутати.
acsconn.open() треба.
Дивись: https://msdn.microsoft.com/ru-ru/librar … -snippet-2

Хоча... Воно в тебе все прописане.
Доречі, а чому наповнення не зробити методом модуля Module1?
Передавати туди комбік ссилкою, и наповнювати у самому Module1... Здається це буде краще.

5

Re: Заповнення Combobox(vb.net) із бд Access

Не хоче відображатися

6

Re: Заповнення Combobox(vb.net) із бд Access

Пошаговку зроби. Можливо запрос нічого не вертає.

7

Re: Заповнення Combobox(vb.net) із бд Access

А що значить по шагово?

8

Re: Заповнення Combobox(vb.net) із бд Access

Юрій_ написав:

А що значить по шагово?

Ну напевне покрокове виконання щоб вирахувати в якому рядку помилка

9 Востаннє редагувалося Itari (10.11.2015 10:30:00)

Re: Заповнення Combobox(vb.net) із бд Access

Юрій_ написав:

А що значить по шагово?

Саме так. Трасування, Debug... Крокувати степ-бай-степ по коду, дивлячись як він себе показуе, куди ведуть такі оператори як IF, FOR... тощо.

10

Re: Заповнення Combobox(vb.net) із бд Access

В тебе івент форм_лоад не зарегістрований. Саме перше що треба зробити це
http://1drv.ms/1M3Hu1e

Подякували: Юрій_1

11 Востаннє редагувалося Юрій_ (10.11.2015 23:02:45)

Re: Заповнення Combobox(vb.net) із бд Access

truesupport,дякую Вам все за працювало. Дані від ображаються. Тепер додав код ,щоб при зміні данних в комбобоксі відображались дані в текстбоксах1,2. Наприклад : вибрали АТП і в текстбокс1(авто)-АА 123-90ВА,текстбокс2(Водій)-Петренко.
Де  помилка в коді?
Прикладаю файл

Post's attachments

Combo.7z 40.65 kb, 327 downloads since 2015-11-10 

12

Re: Заповнення Combobox(vb.net) із бд Access

та сама проблема

13

Re: Заповнення Combobox(vb.net) із бд Access

івент форм_лоад не зарегістрований ? Я так зрозумів

14

Re: Заповнення Combobox(vb.net) із бд Access

Dim acscmd As New OleDb.OleDbCommand

А можливо поцікавитись, чому цю стрічку не винести глобально? Тобто винести acscmd, а ініціалізувати її у той же Form1_Load?
І взагалі, може краще інкапсулювати усю працю з базою у методі модуля?

15

Re: Заповнення Combobox(vb.net) із бд Access

Ні там все гуд, не зареєстрований секшин ченджд чи якось так, якщо порівняти form_load і той другий метод то в форм лоад є Handles Me.Load а в того іншого методу - ні. Зазвича я ствюю хендлери на івенти так: переходжу на ту сторінку що на скіршоті знаходжу потрібний івент і два рази кацаю на пустом полі і студія сама за мене створює метод з потрібною сигнатурою.

16

Re: Заповнення Combobox(vb.net) із бд Access

truesupport, запрацювало. Ура.  Дуже вдячний Вам  всім. *YAHOO*