Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/41: Рейтинг темы: голосов - 41, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 01.04.2013
Сообщений: 5

Создание Вычисляемого Поля

09.09.2013, 05:58. Показов 8475. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, помогите/подскажите как создать вычисляемое поле.
Мне нужно сделать чтоб считалось по формуле
Стоимость за 1 единицу товара*всего товара=вся стоимость товара.
Миниатюры
Создание Вычисляемого Поля  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.09.2013, 05:58
Ответы с готовыми решениями:

Отображение определенных записей и создание вычисляемого поля
Добрый день. Есть таблица Students, созданная через Датабейз. До этого работал с ней через компонент Table ,но понял что много чего...

Создание вычисляемого поля между двумя DBGrid
Здравствуйте. Имеется главная и зависимая таблицы Пара и Выступление. в таблице Пара есть атрибут "результат", а в зависимой...

Заполнение вычисляемого поля
Необходимо чтобы для каждой записи таблице "Учет" вычисляемое поля считало сумму соответствующую индексу в таблице "Продажи" ...

8
2 / 2 / 4
Регистрация: 30.05.2011
Сообщений: 22
09.09.2013, 08:17
Для того, чтобы создать вычисляемое поле, необходимо в адотабл создать новое поле калкулатед, и в коде программы заполнять это поле через обращение к другим полям, Adotable1[1].values или adotable1.fieldbyname
0
0 / 0 / 0
Регистрация: 01.04.2013
Сообщений: 5
09.09.2013, 15:44  [ТС]
Цитата Сообщение от jonikorz Посмотреть сообщение
Для того, чтобы создать вычисляемое поле, необходимо в адотабл создать новое поле калкулатед, и в коде программы заполнять это поле через обращение к другим полям, Adotable1[1].values или adotable1.fieldbyname
тогда вопрос как его создать?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33379 / 21503 / 8236
Регистрация: 22.10.2011
Сообщений: 36,899
Записей в блоге: 12
09.09.2013, 16:48
Цитата Сообщение от Meteora_ok Посмотреть сообщение
как его создать?
Щелкнуть правой кнопкой мыши по Fields, и выбрать NewField, Field Type выставить в Calculated...



Заполнять - в OnCalcFields датасета...
1
0 / 0 / 0
Регистрация: 01.04.2013
Сообщений: 5
10.09.2013, 15:08  [ТС]
Цитата Сообщение от UI Посмотреть сообщение
Щелкнуть правой кнопкой мыши по Fields, и выбрать NewField, Field Type выставить в Calculated...

Вложение 305703

Заполнять - в OnCalcFields датасета...
Вот что получается.. выбрать невозможно.
Что делать дальше не понимаю, так как в бд delphi не разбираюсь.
Миниатюры
Создание Вычисляемого Поля  
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
10.09.2013, 15:17
Ну все верно, только имя полю то задайте. А вычисления для этого поля делаются в событии вашей таблички OnCalcField
0
0 / 0 / 0
Регистрация: 13.12.2013
Сообщений: 18
15.01.2014, 13:24
а как быть, если работаю с запросом, а не таблицей? я заранее создал пустые поля в базе, в которые буду добавлять результат.

проблема в том, что запрос выполняется программно, и в десинге его нет, и обратиться по имени нельзя. я пытаюсь вычислять обращаясь по имени поля, но не выходит:

Delphi
1
DBViewItems.FieldByName('calc_items').AsInteger:= DBViewItems.FieldByName('items_total').AsInteger;
Пока без условий, позже в это поле будут заноситься разные данные, в зависимости от значения других полей. но и простое присваивание не работает

Добавлено через 16 минут
думаю, что разгадка в том, что мое поле не calculated ?
0
 Аватар для HyperZen
498 / 251 / 56
Регистрация: 16.06.2011
Сообщений: 904
15.01.2014, 18:53
1) Используйте язык SQL, компонент TADOQuery, свойство SQL, правой кнопкой на компонент - Add All Field
SQL
1
2
SELECT Tovar.Naimenovanie, Tovar.Stoimost_za_ed, Tovar.Vsego_Tovara, (Stoimost_za_ed*Vsego_Tovara) AS [Итоговая стоимость]
FROM Tovar
2) Прочтите хоть один мануал
0
0 / 0 / 0
Регистрация: 13.12.2013
Сообщений: 18
15.01.2014, 20:18
Цитата Сообщение от HyperZen Посмотреть сообщение
1) Используйте язык SQL, компонент TADOQuery, свойство SQL, правой кнопкой на компонент - Add All Field
SQL
1
2
SELECT Tovar.Naimenovanie, Tovar.Stoimost_za_ed, Tovar.Vsego_Tovara, (Stoimost_za_ed*Vsego_Tovara) AS [Итоговая стоимость]
FROM Tovar
2) Прочтите хоть один мануал
1) Add All Field при изменении текста запроса разве не пропадут?
2) рантайм как создать калькулейт поле?
3) sql использовать неудобно из за огромной зависимости от параметров в программе, удобнее было бы обрабатывать он калькулейт
4)мануалы полезны, но времени нет, поэтому и спрашиваю
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.01.2014, 20:18
Помогаю со студенческими работами здесь

Суммирование вычисляемого поля в ADOTable
Всем привет помогите пожалуйсто. У меня база данных через ADOTAble, одно поле Calculated. Нужно чтобы числа которые сщитаются в этом поле...

Запись в БД значение вычисляемого поля
Доброго времени суток! Задача следующего плана: Есть два столбца в БД, столбец1 и столбец2, столбец3=столбец1*столбец2. Столбец3 -...

Ошибка при создании вычисляемого поля
Помогите. Ошибка появляется в коде при создании вычисляемого поля.

Как посчитать количество записей вычисляемого поля?
в таблице DBGrid есть поле Дата рождения, с помощью вычисляемого поля посчитали Возраст и заполнили автоматически. Необходимо сделать...

Для расчета вычисляемого поля взять значение из записи ниже
Помогите. Делаю БД BDE... В ней есть таблица(Main) с вычисляемым полем(ITOG) и там нужно расчитать результат, при чем одно из значений...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru