Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
2 / 2 / 1
Регистрация: 22.06.2012
Сообщений: 244

Способы встраивания вычисляемых полей в таблицы ЮИ

19.12.2012, 09:28. Показов 1646. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всех с наступающим концом.

Задался целью реализовать вычисляемые поля на стороне клиента. Но боюсь, без опыта, наломать кучу дров и себе мозг заодно. Прошу совета, как лучше реализовывать такие вещи.

Допустим у нас есть ДатаСет, который отображается у юзера. Туда вгружаются исходные данные.
Что делать далее? Обратиться к объекту DataTable в DataSet и добавить туда столбец, прописав свойство Expression?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.12.2012, 09:28
Ответы с готовыми решениями:

Округление вычисляемых полей
Здравствуйте. Использую SQL 2005 Допустим у меня есть таблица table{a decimal,b decimal, c as a/b} 1.В таком случае с у меня...

Обновление вычисляемых полей
В общем такая проблемка. Есть подформа, на которой часть данных вычисляется из других полей. На форме стоит автообновление. Так вод данные...

Binding вычисляемых полей
На форме у нас есть 3 numerecUpDown контроллера. Создаем два вычисляемых поля, которые потом будем использовать для нашей формулы. ...

9
 Аватар для Бельфегор
688 / 602 / 139
Регистрация: 08.05.2009
Сообщений: 1,098
19.12.2012, 13:43
Цитата Сообщение от Void-87 Посмотреть сообщение
Обратиться к объекту DataTable в DataSet и добавить туда столбец, прописав свойство Expression?
Оно самое.
1
2 / 2 / 1
Регистрация: 22.06.2012
Сообщений: 244
19.12.2012, 14:33  [ТС]
Спасибо.

Я планирую организовать алгоритм метода примерно так:
1. Конструируем объект DataColumn, настраиваем выражение.
2. Обращаемся к коллекции Таблиц ДатаСета, далее к коллекции DataColumn этой таблицы
3. Запускаем метод Add() коллекции DataColumn принимающий столбец из первого пункта
4. Вуаля.

Я ничего не упустил в алгоритме?
0
 Аватар для Бельфегор
688 / 602 / 139
Регистрация: 08.05.2009
Сообщений: 1,098
19.12.2012, 14:42
Все правильно.
Не забудь дать соответствующий тип и имя для DataColumn.
А так же после добавления в таблицу, советую вызвать на таблице метод AcceptChanges
0
2 / 2 / 1
Регистрация: 22.06.2012
Сообщений: 244
19.12.2012, 15:41  [ТС]
С типом возникла проблема. Подскажите как синтаксически подставить типа
C#
1
2
3
4
5
public void SetExpression(DataSet targetDataSet)
        {
            string ExpressionText = @"Цена * Количество";
            targetDataSet.Tables["Товары"].Columns.Add("Сумма", /* ЧТО ЗДЕСЬ? */, ExpressionText);
        }
Я не понимаю что хочет калькулятор. Подставлял туда int и даже напрямую Sytem.int
не работает. Не как он хочет чтобы я ему тип задал
0
 Аватар для Бельфегор
688 / 602 / 139
Регистрация: 08.05.2009
Сообщений: 1,098
19.12.2012, 15:54
C#
1
2
3
typeof(int)
typeof(decimal)
typeof(string)
0
2 / 2 / 1
Регистрация: 22.06.2012
Сообщений: 244
19.12.2012, 16:29  [ТС]
Запилил. Все компильнулось.
НО! Почему-то в ГридВью новый столбец не отображается! Все что было до этого, отображается, а нового столбца просто нет О_О Почему так? AcceptChanges() делал, данные пробовал заливать и до и после.
0
1 / 3 / 2
Регистрация: 30.12.2010
Сообщений: 45
19.12.2012, 17:35
DataBind?
0
 Аватар для Бельфегор
688 / 602 / 139
Регистрация: 08.05.2009
Сообщений: 1,098
19.12.2012, 17:45
Как к гриду биндишь?
Какое значение у грида на свойстве AutoGenerateColumns ?
0
2 / 2 / 1
Регистрация: 22.06.2012
Сообщений: 244
19.12.2012, 19:31  [ТС]
Цитата Сообщение от Бельфегор Посмотреть сообщение
Как к гриду биндишь?
Какое значение у грида на свойстве AutoGenerateColumns ?
К сожалению, тут я полный ноль. Вы имеет ввиду BindingSource? В литератору почему-то мне еще не встречалось его использование при работе с ГридВью, что странно. Имею смутное представление о назначении такой вещи.

Я делал так. Выбирал источник данных для ГридВью нужный датасет и ставил в свойстве DataMember нужную таблицу для отображения. Надо полагать биндинга вообще не было О_О

Кстати, свойства AutoGenerateColumns нету в списке свойство Грида. Смотрел по алфавиту, его нету.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.12.2012, 19:31
Помогаю со студенческими работами здесь

Суммирование вычисляемых полей.
На ленточной форме есть вычисляемые поля, при изменении значения одного из полей все поля должны просумироваться. При написании...

Выборка данных из вычисляемых полей
Здравствуйте! Необходимо для Клиентов (Client) вывести информацию по связанными с ними Счёт-фактурами (Count). Поля общ кол-во и сумма...

Запрос с использование вычисляемых полей
Всем привет!:) Помогите разобраться. Имеется заполненная таблица, нужно создать запрос с использованием вычисляемых полей. В общем создать...

Порядок прохода вычисляемых полей.
Какой порядок вычислений значения для Computed Field ? Т.е. есть 2 поля. №2 использует значение №1. В зависимости от их расположения...

Создание вычисляемых полей в InterBase
С помощью запроса Select Cena*0,93 Cena s nadbavkoy From Sotrudniki Рассчитала цену с надбавкой. Но одного поля мне не достаточно,...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru