|
Как произвести математическую операцию при помощи SQL и вывести результат в поле формы
|
|||
---|---|---|---|
#18+
Приветствую, Хотел бы спросить как можно сделать форму, когда вычисления проводятся в SQL, а результат выводится в форме. Прикладываю пример БД. Там есть форма, где можно выбрать 3 пункта. И таблица, где есть 4 столбца (1-4), а также еще два столбца В1,В2. Хотелось, чтобы при выборе флажков(флажки 1-4) в форме, происходила следующая математическая операция: складывались значения выбранных столбцов (1-4) при помощи флажков, а затем умножались на значения В1,В2, после чего полученные значения для строк складывались. Результат выводится в форме в соответствующие поля. Например: 1 2 3 4 В1 В20 1 2 0 0,25 0,251 1 0 1 0,3 0,30 0 1 0 0,1 0,1 В списке формы выбраны первые две строки и отмечены флажки 1 и 2, соответственно сначала складываются 0 и 1, затем умножаются на 0,25 для первой строки получается : 0,25, после чего складываются 1 и 1 для второй строки и сумма умножается на 0,3, получаем :0,6. Финалом складываем 0,25 и 0,6, получаем : 0,85 и это значение выводится в поля формы. Есть какие-то примеры как это реализовать или можете объяснить как это сделать? Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2017, 02:00 |
|
Как произвести математическую операцию при помощи SQL и вывести результат в поле формы
|
|||
---|---|---|---|
#18+
P.S. Вот пример, писал долго пост и файл отвалился ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2017, 02:01 |
|
Как произвести математическую операцию при помощи SQL и вывести результат в поле формы
|
|||
---|---|---|---|
#18+
Базу не смотрела. Да и необходимости в этом не вижу. 1. Добавьте в область данных формы вычисляемое поле со значением ControlSource Property Код: sql 1.
Вот только странно — пишете "а затем умножались на значения В1,В2", а в приведенном затем примере используется только [B1]. Или в условии должно было быть "а затем умножались на ненулевые значения В1,В2" ? Короче — подправите выражение, как надо. 2. Добавьте в примечание формы свободное поле, допустим, S2. 3. Задайте процедуру обработки события AfterUpdate для всех флажков так: Код: sql 1.
4. Поместите в модуль формы функцию Код: vbnet 1. 2. 3. 4. 5.
Тут еще нужно будет добавить WHERE-условие отбора записей, дающих вклад в итоговую сумму. Но четкого описания этого отбора в описании задачи нет. Поэтому сами распишете, как знаете. Что такое "Там есть форма, где можно выбрать 3 пункта.", тоже непонятно, какие это 3 пункта и зачем. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2017, 21:06 |
|
|
start [/forum/topic.php?fid=45&fpage=84&tid=1612788]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
2ms |
others: | 335ms |
total: | 446ms |
0 / 0 |