|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
27.06.2007, 10:05 | #11 | |
Пользователь
Регистрация: 26.06.2007
Сообщений: 36
|
Цитата:
То, что вы привели будет работать в зависимости от положения маркера. То есть я скажем ввожу это в событие OnCalcFields и он считает. Но мне нужно другое. Давайте так, есть колонки-они идут сверху вниз есть поля они слева- направо, а есть ячейка.. Мне надо чтобы в колонке первые 2 ячейки сверху вниз я ввожу а третья вычисляется, то есть это относиться к одному Field. Более того, мне надо чтобы это делалось в независимости от положения маркера Последний раз редактировалось Gorin; 27.06.2007 в 10:17. |
|
27.06.2007, 11:21 | #12 | |
Форумчанин
Регистрация: 20.06.2007
Сообщений: 270
|
Цитата:
Нечто подобное тому, что ты хочешь, можно замутить через DescisionCube с использованием SQL запросов. Но он создан для отображения результатов выборки и режим редактирования, кажется, не поддерживает. Сам я мало использовал этот компонент на практике . Только в ознакомительных целях и только для отображения. Но получилось! Если данных у тебя не много, проще выгрузить ее в Excel и просматривать ее там.
-Кукушка, кукушка! Накукуй мне сто лет!
-А накукуй тебе столько? (с) Библия. Вольный перевод с древнееврейского. |
|
27.06.2007, 14:18 | #13 |
детский тренер
Форумчанин
Регистрация: 08.06.2007
Сообщений: 532
|
короче я тебе подкину идею...Она карявая,конечно... но что-то работает....
вставляешь эту муть в цикл while table1.eof<>true then do......end; и проверяешь(if then) на то, что номер строки кратный 3-м , для этого пользуйся оператором DIV..... переменную для div берешь ,например, j , которое перед этим приравниваешь к : j:=table1.recNo; Перемещаешься по таблице table1.next; в начало table1.first.... Слепи как-то.. подумай.... А вот само тело,которое вставляешь в тело IF.... Then: table1.MoveBy(-1);// перемещаешься на позицию перед a:= Table1field2.Value ;//сохраняешь значение в переменную а Table1.MoveBy(-1);// перемещаемся еще на одну позицию b:= Table1field2.Value;//присваиваем значение.... Table1.MoveBy(2); возвращаемся в поле,куда нужно писать.... Table1.Edit;//режим редактирования табл. Table1field2.value := a + b; // записывем Table1.Post ;//сохранение.... Организуй принудительный выход из цыкла!!! потому-что зависать будет... Братка, я тебе идею подал... А там решай сам....тут нужно как-то в цикле все сделать... Можно еще воспользоваться Маркером (bookmark).... Но тут нужно думать.... В общем дерзай,братумба..... table1.first; while table1.eof<>true then do begin if ...DIV... Then do begin{мой код} end; запоминаешь позицию(bm1:=table1.bookmark) ,куда вставлял с помощью маркера и выходишь принудительно(не забудь объявить маркер bm1 : TbookmarkStr)... при следующем нажатии устанавливаешь позию на маркер: table1.bookmark := bm1; end; короче идея есть...Думай.... Може, я что-то и намудрил, просто времени мало ,братка... Напряги на работе.... Всех благ
Я злой и страФный серррый воФк, и в пАрАсятах знаю толк - ppp ppp pp p pp pp
Последний раз редактировалось Pitbull; 27.06.2007 в 16:45. |
27.06.2007, 15:22 | #14 |
Форумчанин
Регистрация: 15.02.2007
Сообщений: 183
|
Ок. Если вопрос стоит так, то создай в своей таблице дополнительное пустое поле. Ведь, чтобы вводить и считать таблица должна быть в режиме редактирования, да и совсем забыл при перемещении по строкам грида данные автоматом записываются в таблицу, второе условие которое необходимо это обязательное заполнение обоих столбцов для подсчета, если какое-нить значение отсутствует, то ничего считаться не будет. соответственно ты вводишь в 2 колонки значения, после этого жмешь на кнопку расчитать и результаты последовательно записываешь в то самое дополнительное поле. Обновляешь таблицу путем её закрытия и открытия и вот тебе подсчет. Я дал только идею.
Знать все невозможно, в силу того, что жить бы стало неинтересно.
|
27.06.2007, 16:24 | #15 | |
детский тренер
Форумчанин
Регистрация: 08.06.2007
Сообщений: 532
|
Цитата:
Я злой и страФный серррый воФк, и в пАрАсятах знаю толк - ppp ppp pp p pp pp
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как получить доступ к ячейке DBGrid | RatMir | БД в Delphi | 1 | 16.06.2008 22:35 |
можно ли в stringgrid задавать размер конкретной ячейки | SeЯgey | Помощь студентам | 3 | 26.04.2008 18:47 |
Удаление конкретной строки Memo | JakSon | Общие вопросы Delphi | 6 | 03.03.2008 09:35 |
картинка (jpeg) в ячейке | Andrew999 | Microsoft Office Excel | 2 | 04.02.2008 04:49 |
Работа с конкретной строкой в DBGrid | alikon1 | БД в Delphi | 1 | 10.12.2007 09:07 |