Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.05;
Скачать: CL | DM;

Вниз

Доступ к данным.   Найти похожие ветки 

 
Igoryan   (2002-08-16 10:09) [0]

Уважаемые мастера, прошу Вас ответь на наверника простой вопрос (просто я наверное совсем деградировал).

Ситуация. Есть сервер БД (progress), используя BDE, через ODBC соединение, я, с помощью Query, выбираю данные и скидываю их в DBGrid.

Задача. До того, как данные отобразятся в гриде отредактировать их иметь возможность их обрабатывать (производить какие-то операции арифметические, строковые и т.д.).

Попытка решить задачу через ...fields[i].asstring. Привела к ошибке, суть которой заключается в том, что система ищет файл с названием таблицы(с которой я качаю).dbf и, есттественно не находит.


 
Mike Kouzmine   (2002-08-16 10:12) [1]

Если не получается в запросе получить "вычисляемые" поля, то добавь их в tQuery, или я не понял вопроса?


 
Igoryan   (2002-08-16 10:28) [2]

С полями все нормально, все что мне нужно я selectom выбираю. Нужен кусок кода, пример обращения к данным (не в базе, а в памяти, "на лету").


 
Mike Kouzmine   (2002-08-16 10:34) [3]

Так я и говорю про вычисляемые поля
select n, n1, n2+n3/n4 as z from ....
или в tquery создавать вычисляемые поля
onCalcFields
q1z.Value := q1n2.Value + q1n3.Value / q1n4.Value


 
Igoryan   (2002-08-16 10:41) [4]

Плохо я наверное выражаю, то чего хочу.

Упростим все.

Запрос:
select count(*) from sex.

Как вывести результат в label.caption.


 
Jeer ©   (2002-08-16 10:45) [5]

label.caption := quSex.Fields[0].AsString;


 
Igoryan   (2002-08-16 10:48) [6]

Для Jeer: Читай начало.


 
Polevi ©   (2002-08-16 11:00) [7]

смотри OnGetText
- тогда label.caption := quSex.Fields[0].Text



 
Igoryan   (2002-08-16 11:08) [8]

Ошибка повторяется.
Для справки:

Когда я как-то работал c серваком(SQL) через ADO, то там я делал так.

var rec:_recordset;
...
begin
rec:=AdoConnection.execute("select......");

, а у объекта recordset есть все необходимые методы для решения задачи.


 
Mike Kouzmine   (2002-08-16 11:16) [9]

Или я тупой или одно из двух.
Какие действия ты хочешь производить с выбранными данными перед показом? Напиши кусочек кода.


 
Igoryan   (2002-08-16 11:20) [10]

Например записать значение какого-нибудь поля в Tlabel.Caption, или добавить в TListBox и т.д.


 
Mike Kouzmine   (2002-08-16 11:22) [11]

q.AfterOpen
while not eof do
listbox.add(qn.asString)
Если это не работает, то не знаю


 
Igoryan   (2002-08-16 11:29) [12]

Про fields[n].asstring(если про это говорится) я писал, ЕТА ВЕЩЬ РАБОТАЕТ С ЛОКАЛЬНЫМИ ФАЙЛАМИ(ТАБЛИЦАМИ например sex.dbf). У меня они идут с сервака СУБД PROGRESS.


 
Jeer ©   (2002-08-16 11:40) [13]

Скорее всего

Igoryan (16.08.02 10:09)
(просто я наверное совсем деградировал).

>Igoryan (16.08.02 11:29)
>Про fields[n].asstring(если про это говорится) я писал, ЕТА >ВЕЩЬ РАБОТАЕТ С ЛОКАЛЬНЫМИ ФАЙЛАМИ

А это и есть уже локальные данные, выдернутые запросом на клиента в буфер.

Вы хорошо понимаете движение данных и функциональность клиент-серверной технологии ?


 
Johnmen ©   (2002-08-16 11:41) [14]

М-да...
Igoryan, если еще не пропало желание получить ответ, приводи ВСЕ подробности (как соединяешься, как получаешь данные, как их обрабатываешь, какая ошибка[конкретно текст], что конкретно хочешь)...


 
Igoryan   (2002-08-16 11:46) [15]

Для 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


 
Igoryan   (2002-08-16 11:51) [16]

Johnmen :
1. Есть ODBC соединение с сервером баз данных PROGRESS
2. Есть прога использующая BDE и соединение
3. В проге есть объект TQuery, он возвращает данные с сервака.
4. Надо записать значение некоторых полей в различные места (Label, Listbox и т.д.)


 
Jeer ©   (2002-08-16 11:53) [17]

table C:\.....xxx.dbf not found
Ну откуда здесь должна взяться ЛОКАЛЬНАЯ таблица да еще dbf-формата, если Вы раьотаете с PROGRESS

Скорее всего у Вас не настроена TDatabase


 
Jeer ©   (2002-08-16 11:55) [18]

>4. Надо записать значение некоторых полей в различные места >(Label, Listbox и т.д.)


Так ПОЛЕЙ или всех ЗАПИСЕЙ некоторых полей ?

>2. Есть прога использующая BDE и соединение
Соединение с чем ?


 
Igoryan   (2002-08-16 12:14) [19]

Уважаемый Jeer. Большое спасибо, моя проблема(кроме ДНК) действительно была в настройках Database.


 
Jeer ©   (2002-08-16 12:24) [20]

Ok, все путем.



Страницы: 1 вся ветка

Текущий архив: 2002.09.05;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.022 c
7-14298
ASGroup
2002-06-22 23:10
2002.09.05
Текущая раскладка клавиатуры


3-13947
_igorok
2002-08-15 17:07
2002.09.05
Сортировка символьных полей


3-13906
Linx
2002-08-14 21:34
2002.09.05
Ошибка при сохранении данных в таблице


1-14037
Polevi
2002-08-26 16:53
2002.09.05
Как создать экз класса по его имени ?


1-14073
CrazyAngel
2002-08-23 19:21
2002.09.05
dll+newform