|
0 / 0 / 0
Регистрация: 06.12.2020
Сообщений: 40
|
||||||
Вывод результата исходя из желаний пользователя30.07.2021, 20:26. Показов 7557. Ответов 62
Метки нет (Все метки)
Добрый вечер, форумчане. Извините за некорректную постановку вопроса в заголовке, очень тяжело придумать правильное название темы.
Собственно суть темы: Я имею в одной форме datagridview, в котором содержатся данные, вот в таком виде (привожу скрин). В этой форме пользователь заполняет данные о разных показателях для бухгалтерского счёта некоторой организации, затем по нажатию кнопки "сохранить" сохраняет показатели каждого элемента в XML, для последующей работы с сохраненной организацией. Так вот. Как вы могли заметить здесь есть различные показатели. Так же мы имеем форму "Коэффициенты" (скрин 2), который содержит в себе список вероятных коэффициентов (расчётов). Есть несколько "дефолтных" коэффициентов, которые рассчитывают результат некоторой формулы, так, например,
В изменении (либо создании новой) формулы необходимо создать выбор предлагаемых элементов формулы: статей баланса (на основе которых коэффициент и высчитывается) а также математических знаков, т.е. сочитаем мы резервный капитал с нераспределенной прибылью или же вычитаем, либо умножаем, быть может. Собственно ряд вопросов: 1. Как правильно реализовать создание коэффициента, как правильно получает данные необходимых строк. 2. Возможно ли создать удобный конструктор формул для пользователя и как реализовать это? Я не прошу выполнить работу за меня, я лишь прошу рассуждений неравнодушных. Буду благодарен каждому, кто хоть подаст идею, и, может быть, покажет свой пример. Спасибо.
0
|
||||||
| 30.07.2021, 20:26 | |
|
Ответы с готовыми решениями:
62
Запрос и ввод имени пользователя, сравнение с текущим логическим именем пользователя и вывод результата Сделать вывод информации о новости, исходя из данных о имени пользователя и id категории Вывод результата в файл, при переводе чисел по выбору пользователя |
|
0 / 0 / 0
Регистрация: 06.12.2020
Сообщений: 40
|
||||
| 02.08.2021, 17:57 [ТС] | ||||
![]() Ну вообще по этому пункту я открыт к обсуждению
0
|
||||
|
0 / 0 / 0
Регистрация: 06.12.2020
Сообщений: 40
|
|||
| 02.08.2021, 18:14 [ТС] | |||
|
0
|
|||
|
|
|
| 02.08.2021, 21:21 | |
|
AviacionnyUser, вот теперь мы пришли к некоему консенсусу. Это радует.
Добавлено через 2 часа 55 минут AviacionnyUser, давайте отдохнем немного. А потом продолжим. Добавлено через 3 минуты А над Камчаткой погода не очень, опять туман.... (с) гр. "Любэ"
0
|
|
|
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
|
||||||
| 03.08.2021, 11:04 | ||||||
|
если используются только примитивные математические операции+-/*(), то можно обойтись
0
|
||||||
|
0 / 0 / 0
Регистрация: 06.12.2020
Сообщений: 40
|
||||
| 03.08.2021, 12:31 [ТС] | ||||
|
upd: Нет, действительно, возможно это пригодится (я сомневаюсь), но пока еще до расчётов даже дело не дошло Добавлено через 1 минуту
0
|
||||
|
0 / 0 / 0
Регистрация: 06.12.2020
Сообщений: 40
|
|||
| 03.08.2021, 19:30 [ТС] | |||
|
Вернее будет сказать, что коэффициент редактировать мы действительно НЕ будем, а вот формулу его расчёта будем Я бы уже пример бы какой нибудь сделал нормальный, но у меня в голове всё еще не созрело ничего адекватного. Не быть мне архитектором
0
|
|||
|
0 / 0 / 0
Регистрация: 06.12.2020
Сообщений: 40
|
||||
| 03.08.2021, 19:45 [ТС] | ||||
|
Еще раз... Коэффициент N = сумме или разности некоторых компонентов. Каких компонентов? Ответ: решает пользователь (либо по умолчанию, формулы дефолтных коэффициентов кидал выше). Так сумме или разности? Ответ: решает пользователь. Добавляет столько компонентов сколько ему нужно и добавляет произвольные значения по желанию и расставляет между этими компонентами операции сложения, либо вычитания, либо умножения, либо деления, либо скобки. Надеюсь всё уточнил.
0
|
||||
|
|
||||||||||||||||||||||
| 03.08.2021, 21:36 | ||||||||||||||||||||||
![]() Понятно. Попробуем что-нибудь соорудить. Добавлено через 1 час 45 минут AviacionnyUser, допустим, введено выражение:
Но, подумал я. Добавьте в проект вот этот класс: Класс RPN
Проверим его работу:
0
|
||||||||||||||||||||||
|
0 / 0 / 0
Регистрация: 06.12.2020
Сообщений: 40
|
|
| 04.08.2021, 14:41 [ТС] | |
|
wizard41, это хороший класс, хороший функционал. По прежнему вопрос остается актуальным о конструкторе. Понимаете ли, реализовать процесс расчёта я вполне в состоянии (хотя и не спорю, что RPN, который вы ввели в эту тему, намного безупречнее, чем любой другой аналог, который я бы смог придумать для расчёта).
Мне нужна помощь именно в реализации конструктора коэффициентов. Чтобы можно было буквально строить "по кирпичикам" компоненты с операторами в ряд (а уже после этого делать расчёт). Вероятно, у нас разный подход к построению процессов, у вас, если угодно Code-First, а мне б View-First и от этого отталкиваться
0
|
|
|
|
|||
| 04.08.2021, 15:23 | |||
![]() Добавлено через 25 минут AviacionnyUser, вообще то, начало положено еще в этом моем посте. Добавьте кнопок /*=, отмена, стереть и т.п. В листбоксе уже не коэффициенты, а компоненты. Таким же образом можно переделать и второй мой пример.
0
|
|||
|
|
||||||||||||||||
| 05.08.2021, 12:13 | ||||||||||||||||
|
AviacionnyUser, и снова здравствуйте.
Вот эти списки явно напрашиваются в Dictionary
Зачем вот это сохранять в файл, если это жестко прописанные константы в программе: Кликните здесь для просмотра всего текста
Все еще остается открытым вопрос - от куда берутся численные значения этих компонент? Вот тут "123" от куда взялось? Кликните здесь для просмотра всего текста
0
|
||||||||||||||||
|
|
|||||||||||||||||||||||||||
| 05.08.2021, 15:01 | |||||||||||||||||||||||||||
|
Выкиньте из своего кода List'ы с разделами и компонентами и замените на вот этот словарь: Кликните здесь для просмотра всего текста
На первый взгляд, слегка сложноватая конструкция, но на самом деле более удобная в плане выборок. При показе формы Ред. Коэффициентов
События первого листбокса
второго
События операторских кнопок
Получится такое: Сейчас (для примера) в формулу вставляются коды выбранных строк из словаря. По ним как бы видно, что с чем складывается/отнимается. Где-то в глубине кода по этим "кодам строк" мы должны получать реальные числовые значения и производить математические операции над ними. Предполагается, что данное окно редактора вызвано из Главного окна, где уже определено текущее предприятие, для которого эти формулы строятся. Вопрос, куда и в каком формате сохранять эти формулы - так же открыт.
0
|
|||||||||||||||||||||||||||
|
0 / 0 / 0
Регистрация: 06.12.2020
Сообщений: 40
|
|||||
| 09.08.2021, 12:20 [ТС] | |||||
|
Просто сделал два конструктора (один вызывается без входящих параметров, "новые данные", где вызываются эти константы. Второй с входящим параметром path (путь до xml сохраненного) и десериализуется, при этом константы там не вызываются (посмотрите конструкторы в NewDataForm и станет яснее). Добавлено через 2 минуты Куда? В Application.StartupPath (директория с приложением). В каком формате? Я думаю, что удобнее всего xml или json.
0
|
|||||
|
0 / 0 / 0
Регистрация: 06.12.2020
Сообщений: 40
|
|||
| 09.08.2021, 20:12 [ТС] | |||
|
Да и как это сериализовать в xml...
0
|
|||
| 09.08.2021, 20:12 | |
|
Заполнить массив исходя из результата побитовой проверки числа Средняя температура исходя из сведений пользователя Вывод исходя из условия Вывод результата: вывод результата процедуры Вывод значения исходя из условий Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр.
Дословно, отклонённая. . .
|
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы
Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
|
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
|
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2.
Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
|
|
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
|
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
|
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
|
Более приземисто - Эстафету хвоста в .cdl (деревья эстафеты в сад).
Hrethgir 24.07.2026
В будущем, после написания блока инверсии обхода дерева (эстафеты хвоста), я планирую вернуться к нашему прошлому разговору о том, обладают ли знания целеполаганием. Тогда я пришел к выводу, что. . .
|