Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> access в VB, отображение полей 
:(
    Опции темы
Georg4
Дата 1.4.2004, 00:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 961
Регистрация: 2.11.2002

Репутация: нет
Всего: 10



Мысль такая. В текстбоксе вводится поле с именем (nazvanie), а в 3-х едитах отображаются(соответственно если совпадает название) остальные поля
Но он показывает только последнюю запись, а если без цикла то только первую. как быть
вот код:

Код
Private Sub Text5_Change()
Dim db As Database
Set db = OpenDatabase(Text6.Text)
Dim r As Recordset
Set r = db.OpenRecordset("select kod, nazvanie, stoimost, kolichestvo from tovar;")
Dim n As String
n = r.Fields(1).Value
Do While Not (r.EOF)
If Text5.Text = n then  Label9.Caption = r.Fields(0).Value:Label13.Caption = r.Fields(2).Value: Label14.Caption = r.Fields(3).Value
End If
r.MoveNext
Loop
r.Close
db.Close
End Sub



--------------------
Никто и никогда не должен решать одну проблему дважды
PM MAIL ICQ   Вверх
valex13
Дата 1.4.2004, 06:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 243
Регистрация: 29.1.2003
Где: Иркук. область, г . Иркутск

Репутация: 1
Всего: 1



Это значит что запрос возвращает несколько записей. Если они у тебя двоятся, т.е. одинаковые сделай так. В строке запроса использую ключевое поле DISTINCT
Например:
SELECT DISTINCT CODE,NAME FROM TOVAR
PM MAIL ICQ   Вверх
shilnik
Дата 1.4.2004, 07:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 377
Регистрация: 22.12.2003

Репутация: нет
Всего: 1



Предлагаю так:
Код

Private Sub Text5_Change()
Dim db As Database
Set db = OpenDatabase(Text6.Text)
Dim r As Recordset
Set r = db.OpenRecordset("select kod, nazvanie, stoimost, kolichestvo from tovar;")
'Dim n As String                |      Оно Зачем?
'n = r.Fields(1).Value        |
Do While Not (r.EOF)
If Text5.Text = [b]r.Fields(1).Value[/b] then  Label9.Caption = r.Fields(0).Value:Label13.Caption = r.Fields(2).Value: Label14.Caption = r.Fields(3).Value
End If
r.MoveNext
Loop
r.Close
db.Close
End Sub



--------------------
каталог товаров qp1
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0453 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.