![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Доступ к данным. [D6, Progress]
Igoryan © (2002-08-16 10:09:00)Уважаемые мастера, прошу Вас ответь на наверника простой вопрос (просто я наверное совсем деградировал).
Ситуация. Есть сервер БД (progress), используя BDE, через ODBC соединение, я, с помощью Query, выбираю данные и скидываю их в DBGrid.
Задача. До того, как данные отобразятся в гриде отредактировать их иметь возможность их обрабатывать (производить какие-то операции арифметические, строковые и т.д.).
Попытка решить задачу через ...fields[i].asstring. Привела к ошибке, суть которой заключается в том, что система ищет файл с названием таблицы(с которой я качаю).dbf и, есттественно не находит.
Jeer (2002-08-16 12:24:00) [1]Ok, все путем.
Igoryan (2002-08-16 12:14:00) [2]Уважаемый Jeer. Большое спасибо, моя проблема(кроме ДНК) действительно была в настройках Database.
Jeer (2002-08-16 11:55:00) [3]>4. Надо записать значение некоторых полей в различные места >(Label, Listbox и т.д.)
Так ПОЛЕЙ или всех ЗАПИСЕЙ некоторых полей ?
>2. Есть прога использующая BDE и соединение
Соединение с чем ?
Jeer (2002-08-16 11:53:00) [4]table C:\.....xxx.dbf not found
Ну откуда здесь должна взяться ЛОКАЛЬНАЯ таблица да еще dbf-формата, если Вы раьотаете с PROGRESS
Скорее всего у Вас не настроена TDatabase
Igoryan (2002-08-16 11:51:00) [5]Johnmen :
1. Есть ODBC соединение с сервером баз данных PROGRESS
2. Есть прога использующая BDE и соединение
3. В проге есть объект TQuery, он возвращает данные с сервака.
4. Надо записать значение некоторых полей в различные места (Label, Listbox и т.д.)
Igoryan (2002-08-16 11:46:00) [6]Для Jeer: возможно Вы лучше.
Цитирую ошибку на запрос select count(*) from xxx при использовании fields[0].asstring:
table C:\.....xxx.dbf not found
table C:\.....xxx.db not found
table C:\.....xxx.txt not found
Johnmen (2002-08-16 11:41:00) [7]М-да...
Igoryan, если еще не пропало желание получить ответ, приводи ВСЕ подробности (как соединяешься, как получаешь данные, как их обрабатываешь, какая ошибка[конкретно текст], что конкретнохочешь)...
Jeer (2002-08-16 11:40:00) [8]Скорее всего
Igoryan (16.08.02 10:09)
(просто я наверное совсем деградировал).
>Igoryan (16.08.02 11:29)
>Про fields[n].asstring(если про это говорится) я писал, ЕТА >ВЕЩЬ РАБОТАЕТ С ЛОКАЛЬНЫМИ ФАЙЛАМИ
А это и есть уже локальные данные, выдернутые запросом на клиента в буфер.
Вы хорошо понимаете движение данных и функциональность клиент-серверной технологии ?
Igoryan (2002-08-16 11:29:00) [9]Про fields[n].asstring(если про это говорится) я писал, ЕТА ВЕЩЬ РАБОТАЕТ С ЛОКАЛЬНЫМИ ФАЙЛАМИ(ТАБЛИЦАМИ например sex.dbf). У меня они идут с сервака СУБД PROGRESS.
Mike Kouzmine (2002-08-16 11:22:00) [10]q.AfterOpen
while not eof do
listbox.add(qn.asString)
Если это не работает, то не знаю
Igoryan (2002-08-16 11:20:00) [11]Например записать значение какого-нибудь поля в Tlabel.Caption, или добавить в TListBox и т.д.
Mike Kouzmine (2002-08-16 11:16:00) [12]Или я тупой или одно из двух.
Какие действия ты хочешь производить с выбранными данными перед показом? Напиши кусочек кода.
Igoryan (2002-08-16 11:08:00) [13]Ошибка повторяется.
Для справки:
Когда я как-то работал c серваком(SQL) через ADO, то там я делал так.
var rec:_recordset;
...
begin
rec:=AdoConnection.execute("select......");
, а у объекта recordset есть все необходимые методы для решения задачи.
Polevi (2002-08-16 11:00:00) [14]смотри OnGetText
- тогда label.caption := quSex.Fields[0].Text
Igoryan (2002-08-16 10:48:00) [15]Для Jeer: Читай начало.
Jeer (2002-08-16 10:45:00) [16]label.caption := quSex.Fields[0].AsString;
Igoryan (2002-08-16 10:41:00) [17]Плохо я наверное выражаю, то чего хочу.
Упростим все.
Запрос:
select count(*) from sex.
Как вывести результат в label.caption.
Mike Kouzmine (2002-08-16 10:34:00) [18]Так я и говорю про вычисляемые поля
select n, n1, n2+n3/n4 as z from ....
или в tquery создавать вычисляемые поля
onCalcFields
q1z.Value := q1n2.Value + q1n3.Value / q1n4.Value
Igoryan (2002-08-16 10:28:00) [19]С полями все нормально, все что мне нужно я selectom выбираю. Нужен кусок кода, пример обращения к данным (не в базе, а в памяти, "на лету").
Mike Kouzmine (2002-08-16 10:12:00) [20]Если не получается в запросе получить "вычисляемые" поля, то добавь их в tQuery, или я не понял вопроса?