|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Аналог DataExtraction на vb.net
YngIngKllr
СПб
Регистрация: 29.03.2005
Сообщений: 12,968
|
||
Просмотров: 12873
|
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611
|
вот именно про эту программу я тебе и говорил тут
|
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
СПДС ЖБ нормальная тема, но у нас используется чистый автокад плюс динамические блоки.
maratovich Не просто сортировка и выбор элементов не очень интересует, самое главное последующая обработка. К тому же платное приложение вообще не интересно, у меня есть решение и оно не гибкое, вот в этом и проблема. Можно конечно сделать похожее приложение и хранить данные о сортировке во внешнем файле, но это лишь половина дела, надо же потом обрабатывать данные.
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Ну как вариант, но думаю проще будет самим, придумать некий аналог, сложность в том, что потом идет обработка блоков и вычислений для врс и обьема бетона.
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Ну у меня примерно такая идея и есть, только в начале тоже нужен файл xml, чтобы получать определенные атрибуты и параметры.
Значит в правильном направлении двигаюсь.
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Просто у меня динамические блоки с 8-10 параметрами, плюс атрибуты по 5-6 штук.
Лучше уж сразу фильтровать нужное. Вот последующая обработка с помошью xslt мне более интересна.
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. Последний раз редактировалось DEM, 22.02.2014 в 18:34. |
|||
![]() |
|
||||
Цитата:
Просто последующая обработка достаточно широкое понятие, тут надо говорить о конкретной конечной цели. Ну бесплатно можно навоять только то, на создание чего уйдёт не более 1 дня работы, потом начинается проблема со временем, неохота заниматься, начинаются запросы по увеличению функционала и всплывает вопрос о нужности данного творения. Как пример Бесплатный софт проектировщика(Создание), идея создания данного софта стартовала 07.12.2012, 13:51 - прошло 1 год и 3 месяца, а на выходе что ? А я за 1,5 года выпустил 8 полностью работоспособных программ. И стоимость 100руб позволяет приобретать их каждому. Да и психологический фактор платного софта хорошо сказывается на отзывах и предложениях о дополнении их необходимым функционалом. Есть вторя сторона медали - гибкость это очень много настроек, но простому пользователю надо "Запустил, нажал 2 кнопки, получил", если он этого не получит, то и дальше в настройки не полезет, а удалит с компа. |
||||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
maratovich
По части Бесплатного софта, сейчас нашел платформу на которой это вполне возможно делать, причем Бесплатную с возможностью расширения, за счет Питона или Фортрана. На данный момент отрабатываются функции которы нужны для вывода отчетов и получения табличных данных из файлов csv с интерполяцией. К сожалению времени очень мало 5а это пока уделяю. По части вашей программы, могу сказать, что для меня важна более пост обработка. Т.е. обрабатывать например высоту, ширину и длину пилона, чтобы определить марку каркаса который в нем применяется, длину горизонтальных стержней и их количество. С вашей программой это может получится но придется потом обрабатывать в Экселе, что тоже не зер гуд. Самый оптимальный путь это хранение данных в xml и преобразование через xslt. Мы этот вариант с Барголом и до этой темы обсуждали, сейчас с ним же уже думаем на счет алгоритма. Этот вариант даст гибкость настроек и возможность любой сортировки и обработки. ----- добавлено через ~2 мин. ----- PS. Простой пользователь и не будет знать, как что работает, ему нужно будет только выбрать объекты и вставить таблицы.
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
Цитата:
Есть блок и именем "Пилон", прога должна найти этот блок, подсчитать сколько их, потом найти описание этого блока в xml и присвоить все необходимые данные, и вывести это всё в ексель ? Я от такого решения отказался в силу немного другой специфики работы. Вот допустим у нас трубы и гора фасонных изделий + арматура. Количество диаметров достаточно большое, добавляем что у каждого диаметра есть разные толщины стенок, добавляем разного производителя и в итоге получаем что в базе xml должна храниться вся эта информация. Если взять электрику, то там и похлеще будет - увеличение базы в арифметической прогрессии. Но самое проблематичное в этом - сделать связку блок-база. А самое интересное как узнать то, что мы получим на выходе не запуская программу. У нас открыта модель с кучей блоков, если мы щелкнем на любой блок то как узнаем характеристики которые присвоены в xml ? В моём варианте - с помощью программы автоматом создается блок у которого в атрибутах прописана вся необходимая информация, и нажав на блок всё можно увидеть. А при последующей обработке считываются все данные и потом уже производится обработка - в зависимости от требуемого результата, причем даже если имена блоков одинаковые, а информация в них хоть где то различная, это всё фиксируется. Вот собственно из-за проблемы создания и ведения базы xml отказался от такого варианта. У себя в конторе 2 года использовал вариант с базой наподобие xml, но никто так не захотел разбираться как её вести и заполнять, всё время приходили и говорили, что добавить в базу надо какую нибудь мелочь, а самим просто лень было посмотреть видеоуроки. |
||||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Цитата:
Смысл в том что мы сможем добавлять новые блоки не влезая в тело программы. Появился новый объект, мы его добавили в таблицу xml, добавили обработку в таблицу xslt. И не лезем каждый раз в тело программы. С таким же успехом это могут быть включатели, двери и т.п. Программе будет абсолютно по фигу, что обрабатывать тебе лишь придется создать файл xml для обработки блоков которые ты хочешь получить, и таблицу xslt для вывода результатов. ----- добавлено через ~2 мин. ----- PS. Проще все таки xml править, чем лезть в тело программы... А для xml, можно придумать удобный редактор, для добавления новых блоков.....
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
гадание на конечно-элементной гуще Регистрация: 31.05.2006
Düsseldorf
Сообщений: 7,596
|
Дамир, у тебя потрясающая способность пытаться что-то узнать и при этом скрывать исходные данные.
Покажи хоть один блок, какие у него параметры и что ты хочешь получить на выходе. |
|||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
Цитата:
Цитата:
Цитата:
Примерное редактирование одной из БД для спецификаций на картинке показано. Там насосы, но можно в БД держать что угодно от "винтиков" и "шпунтиков" до танков и ракет. Да еще и с дополнительной информацией по изделиям - картинки, документация, ссылки на сайты. |
|||
![]() |
|
||||
В контексте "расширенные данные, БД, xml, разные для добавления и извлечения, бесплатность" - это тупиковая ветвь развития.
Я без проблем отдаю модель смежникам и любой из них получает всю необходимую информацию в голом автокаде, без каких либо программ, а у вас получается очередной СПДС, без которого ничего не получится. Предполагаю что эта тема станет копией "Бесплатный софт проектировщика(Создание)", предлагаю зачистить всё и оставить только сообщения по теме. |
||||
![]() |
|
||||
|
||||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
НУ вот обещанный пример....
В модели находятся блоки, на листе находятся спецификации которые у меня сейчас программно получаются. Но проблема, в добавлении блоков, если добавляется новый тип стены приходится лезть в тело программы и править код... К тому же сейчас эта программа обрабатывает только стены, а перекрытия не обрабатывает, и чтобы обрабатывала перекрытия придется лезть в код и переделывать на новые блоки все.....
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
гадание на конечно-элементной гуще Регистрация: 31.05.2006
Düsseldorf
Сообщений: 7,596
|
Ты решение Boxa видел? У него же всё тоже самое уже сделано.
----- добавлено через 47 сек. ----- Он видимо скромничает, но вот его видео: https://www.youtube.com/watch?v=UmXOkgwzZ7Q |
|||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
У этого вопроса есть несколько вариантов решений, можно, как уже писали, использовать связку xml и xslt, для вынесения кода обработки за пределы программы; можо использовать вынесенный лисп код который будет запускаться через eval (apply) с соответствующими параметрами (например со списком пар аттрибут значение, причем вспомогательные функции парсинга будут уже написанны в основной библиотеке - то есть надо будет реализовать только "логику") - здесь есть слабое место в безопасности - в автолиспе нет "защищенных" функций передачи упраления - то есть программа может делать все что ей (или ее автору) вздумается да и с vb.net этот метод не очень совместим. Есть вариант создания "спецификации" на обработку аттрибутов и возможно генерации формы для их заполнения. У меня был проект в котором было решено использовать заранее оговоренные префиксы аттрибутов для типизации хранимых в них данных (строки, числа, булевые значения, напряжения, мощность и пр.) и специальный аттрибут - в котором хранилась exceleвская формула - которая в последствии переводилась в excel (хоть я его и не долюбливаю, но в большинстве случаев, спецуху просят вывести именно в него) с подстановкой значений соответствующих аттрибутов. И по этим-же аттрибутам генерировалсь форма для их заполнения (на свой префикс выводился соответствующий контрол).
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Так в том то и дело что тоже самое...
И придется при новых блоках лезть в код, перекомпилировать файл и т.д. У меня то прога и сделана на основе некоторых кусков кода Boxa. Цитата:
Мы ж с Алексеем вместе ща работаем, так что думаю сделаем вариант с xml & xslt
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
swell{d}
Ютуб заблокирован... Ты наверное не отом говоришь, нафига мне закидывать это в MText если у меня и так описания блоков в xml есть... Вся фишка в промежуточных занчениях которых может быть целая куча
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611
|
Цитата:
Видео очень старое и я многое уже переделал или улучшил, на этом видео все как то очень долго и заморочно... 2 DEM/ Ты пытаешься использовать идеологию и код от армирования плит, и через это посчитать армирование стен. Это плохое решение. Я это уже делал. Там дальше тупик. Если ты внимательно посмотришь, то в блоках выложенных тут есть блоки с именами Arm_wall_* и собственно блок реализующий твою идею, это блок Arm_wall_v002_17. Ничто не ново под луной. Последний раз редактировалось Boxa, 24.02.2014 в 12:29. |
|||
![]() |
|
||||
|
||||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611
|
А никакого баттла не будет. Вангую, DEM продолжит гнуть свою линию и не прислушается к советам. Однако, спустя некоторое время, на форуме появится еще одна тема по армированию стен.
ЗЫ. В видео на которое ссылается swell{d} используется программа Arm_lin_obj. Я ее больше не развиваю. Ей на смену идет вот это: http://experement.spb.ru/wiki/doku.p...om_track_lines Последний раз редактировалось Boxa, 24.02.2014 в 12:43. |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Цитата:
Сейчас просто хочу сделать более универсальное решение, которое подойдет потом и для армирования плит и для электриков и архитекторов... Чтобы можно было лишь править файлы xml, а не код программы. Направление которое я выбрал с хранением данных в xml и сортировку в xslt думаю самое оптимальное... ----- добавлено через ~1 мин. ----- Boxa Так я уже реализовал это и спецификации считаются. Просто сейчас решено сделать более универсальное решение.
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
гадание на конечно-элементной гуще Регистрация: 31.05.2006
Düsseldorf
Сообщений: 7,596
|
так ты видосики новые делай. читать статьи скучно...
Offtop: надо бы мне тоже новый видосик записать.. есть чем похвастаться =) |
|||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611
|
|
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Обьясня как у меня сейчас устроена программа.....
1. Выборка блоков осуществляется по тегам атрибутов для изделий и наименованием блоков для стен.... 2. Сортировка по таблицам типов блоков(стены, изделия, колонны и т.п.) идет про префиксу. 3. Определение массы изделий и арматуры забито чатично в таблицы xml частично в теле программы 4. Вывод данных полностью определен в теле программы. Слабые места в данном случае это то, что половина данных опеределяется в теле программы, т.е. если я добавляю новый тип стены мне приходится лезть в тело программы и переделывать код. Так же например, если мне понадобится сделать другую спецификацию(для перекрытий), придется лезть в тело программы и пределывать код полностью. Вот и решено сделать более удобную программу для подсчета блоков, которую можно будет переделывать под соответствующие нужды, не залезая в код программы... ----- добавлено через ~2 мин. ----- Цитата:
![]() ![]()
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611
|
Я пытаюсь до тебя донести мысль, что использовать схему армирования плит, для составления спецификаций линейных объектов - тупиковый путь.
Перефразируя эту фразу, можно сказать, что проблема не в том, как и какие блоки ты обрабатываешь, проблема в том что ты их обрабатываешь. |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Ну дык для этого я и хочу сделать программу которая подходила бы для обоих случаев....
Вынести обработку набора блоков, за пределы тела программы. ----- добавлено через ~2 ч. ----- PS. Глянул то что сделано у Boxa у меня это все забито в xml.
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611
|
Прикольно, а это по твоему что http://experement.spb.ru/wiki/doku.p...es#open_source .?
|
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
Это немного не то, у тебя получается, что ты те данные которыее я забил в xml полуавтоматически.
А я в связи с применением серии использовал для создания xml экселель. Ты все эти данные забиваешь руками и вносишь программно в xml. Ты же и сам уже предложил делать все с помошью xml и xslt. Твой подход с внесением данных в xml, конечно тоже интересен. Но мне в некотором смысле проще, у нас разработана серия для стен, пилонов, перемычек и т.п.(150 л. примерно)
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Где можно применить "Извлечение данных"(_.dataextraction)? | wetr | AutoCAD | 120 | 07.05.2020 13:39 |
vb.net, AutoCAD + windows form | Gelia | .NET | 6 | 23.03.2012 22:14 |
Аналог IDispatch в .NET | Nordek | .NET | 5 | 22.12.2011 18:07 |
VB.NET и COM-сервер | DEM | .NET | 4 | 21.03.2011 10:46 |
Как можно из LISP запросить у юзера выделить произвольные элементы и затем вызвать аналог WMFOUT для сохранения их в изображении? | lexluther | LISP | 4 | 12.08.2009 11:44 |