Поиск:

Ответ в темуСоздание новой темы Создание опроса
> DBGrid, вытащить значения 
:(
    Опции темы
BloodNerd
Дата 17.11.2005, 00:00 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Как из DBGrid вытащить значения нужных мне ячеек (выделеных). Существует база ADO, в которой есть наименование товара и стоимость. Как и куда порекомендуете мне перетаскивать наименование и стоимость и как подсчитать всю стоимость того что выбрано ? Спасибо.
  Вверх
Grig
Дата 17.11.2005, 04:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Я в подобных ситуациях создаю дополнительное логическое поле в таблице(check), потом на DBGridEh создаю колонку с checkbox-ами, а потом пишу следующее:
Код

var
s:real;
begin
adotable.first;
while not(adotable.eof) do
begin
if adotable['check'] = 1 then
s:=s+adotable.Fieldbyname('stoimost').asFloat;
adotable.Next;
end;
showmessage(FloatToStr(s));
end;


Метод наверное извращенный, погоди, может чего получше присоветуют.


--------------------
        
PM MAIL ICQ   Вверх
bas
Дата 17.11.2005, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 446
Регистрация: 14.8.2002
Где: Молдова, Кишинев

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



TBookmarkList, SelectedField,SelectedRow
PM MAIL   Вверх
Guest
Дата 17.11.2005, 23:10 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Спасибо, буду пробовать.
  Вверх
BloodNerd
Дата 17.11.2005, 23:19 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Предыдущее сообщение моё. Grig а исходник не можешь подкинуть...время пожимает как тески. На всё 2 дня, а ещё дохрена чё делать. bas с TBookmarkList Я не знаком, а с SelectedField и SelectedRow что-то не получаеться сообразить код; если б ты подсказал как ими грамотно воспользоваться было бы здорово. И на том спасибо ;)

  Вверх
offline
Дата 18.11.2005, 00:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Регистрируйся и будет тебе счастье smile а по поводу суммы выделенного держи


Код

procedure TForm1.Button1Click(Sender: TObject);
var
  i, j: Integer;
begin
 j:=0;
 if DBGrid1.SelectedRows.Count>0
  then
   with DBGrid1.DataSource.DataSet do
    for i:=0 to DBGrid1.SelectedRows.Count-1 do begin
     GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i]));
     j := j + Fields[0].AsInteger;
     end;
 Label1.Caption := IntToStr(j);
end;


где Fields[0] тот столбец по которому нужно суммировать
smile


PM MAIL   Вверх
BloodNerd
Дата 19.11.2005, 23:21 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Пока у меня не получаеться - фигня с типами данных...selectedrows имеет тип tbookmarks, присваиваю её переменной такогоже типа, а дальше ??? как присвоить значение другому DBgrid'у ?
  Вверх
offline
Дата 20.11.2005, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Что, пример не работает? Странно. Или ты что-то другое делаешь?
PM MAIL   Вверх
BloodNerd
Дата 24.11.2005, 23:18 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Спасибо всё работает.
  Вверх
Value
Дата 13.12.2005, 00:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



А как передать запись выделенной строки из одного грида в другой?
PM MAIL   Вверх
Dron84
Дата 13.12.2005, 00:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Value
ты данные передаёшь не в грид а в таблицу и опять таки через поля...
Код

DataMod.TProt.insert;
DataMod.TProt.Fields.Fields[1].AsString := DataMod.TPer.Fields.Fields[1].AsString;
DataMod.TProt.Fields.Fields[2].AsString := DataMod.TPer.Fields.Fields[2].AsString;
DataMod.TProt.Fields.Fields[4].AsString := DataMod.TPer.Fields.Fields[3].AsString;
DataMod.TProt.Fields.Fields[5].AsString := DataMod.TPer.Fields.Fields[4].AsString;
DataMod.TProt.Fields.Fields[6].AsString := DataMod.TPer.Fields.Fields[5].AsString;
DataMod.TProt.Post;

PM MAIL   Вверх
Value
Дата 13.12.2005, 00:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Вообщем ввёл я
datamodule2.VeisleTable.Insert;
datamodule2.NVTable.Fields.Fields[1].AsString:=datamodule2.VeisleTable.Fields.Fields[1].asstring;
datamodule2.VeisleTable.Post;
а мне назад "NVTable : dataset not in edit or insert mode"
PM MAIL   Вверх
offline
Дата 13.12.2005, 01:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Правила форума: http://forum.vingrad.ru/index.php?s=&act=SR&f=27

>Value
Создай новую тему

з.ы.
Цитата
datamodule2.VeisleTable.Insert;
datamodule2.NVTable.Fields.Fields[1].AsString:=datamodule2.VeisleTable.Fields.Fields[1].asstring;
datamodule2.VeisleTable.Post;
а мне назад "NVTable : dataset not in edit or insert mode"


будь внимательнее, не NVTable а VeisleTable
datamodule2.VeisleTable.Fields.Fields[1].AsString:= ...

Это сообщение отредактировал(а) kirilllius - 13.12.2005, 01:25
PM MAIL   Вверх
Dron84
Дата 13.12.2005, 15:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Value
Внимательностьь, главное свойство программиста!!! smile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

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

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


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


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

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


 




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


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

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