| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
05.09.2011, 17:01 | #1 | |
C# Документооборот для бедных. Как лучше реализовать?
Регистрация: 30.10.2010
Сообщений: 123
|
||
Просмотров: 20702
|
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381
|
Проект нежизнеспособен на перспективу.
1. Файл базы данных - это файловый сервер? Ненадолго. Заполнится БД, появится больше пользователей и работа станет. При файловой работе по сети каждый раз качаются все данные, забивая сеть и память. Надо сразу делать сервер баз данных, даже если он сначала будет локально работать. Это позволит масштабировать работу, при желании хоть в Интернет, хоть где угодно БД разместить. Причем это можно сделать не меняя в программе ни строчки кода. 2. 50 полей? Да ещё текстовых? В одном файле-таблице-БД? Совершенно неверно.Так базы данных не делают! Должно быть много таблиц, связанных отношениями. Справочники и прочее. А вот выборка на каждый проект может и 50, и 250 сведений иметь, но собранных из разных таблиц. Подробности - в любом учебнике. Советую хорошенько ознакомиться с теорией и практикой БД. В таких работах самое главное - проектирование базы данных. Даже в самых примитивных системах документоборота для самых бедных обычно имеются десятки таблиц, связанных отношениями. |
|||
|
||||
это только кличка Регистрация: 22.10.2006
Москва
Сообщений: 252
|
Цитата:
__________________
...в шее моей жилы железные, и лоб мой - медный... |
|||
|
||||
Оснащение проходки горных выработок, ПОС, нормоконтроль, КР, АР Блог Регистрация: 30.01.2008
Ленинград
Сообщений: 18,695
|
Да фигня это всё. В РФ русских программ таких нет. За рубежом свои реалии и нормы.
Сами вы не сделаете. Бумажный документооборот (или так же но письмами в аутлуке) и сознательность сотрудников - ключ к решению проблемы. Ну и ГИПов надо жёстко контролировать главному инженеру. Очень жёстко...
__________________
"Безвыходных ситуаций не бывает" барон Мюнхаузен |
|||
|
||||
Регистрация: 30.10.2010
Сообщений: 123
|
Объясню поподробнее:
"Документооборот" - слишком громко я ляпнул. На самом деле у нас всё очень маленькое. Проектный отдел - целых 3 человека. Раньше каждый выполнял небольшие проекты целиком и хранил у себя на компьютере. Как только пошла путаница и стали зашиваться - нарекли один из компьютеров "сервером", стиснув зубы разобрали свои помойки и сделали общий файловый архив с чертежами. Стали уже работать по сети. Опять стали зашиваться, хотелось побыстрее работать. Теперь моей целью стояло собрать воедино всю информацию о проектах (зачем объяснять думаю не нужно) и заодно немного автоматизировать рутину. Выбрал для этого простой файл базы данных, в котором хранятся все названия проектов, сроки, координаты и прочее. Редактируется он непосредственно из формы в автокаде, попутно заполняя штампы основных надписей и прочую муть. Сами файлы чертежей никакого отношения к БД не имеют и могут находиться где угодно в сети. Принадлежность конкретного чертежа к своей записи в БД определяется просто по номеру проекта, который записан в пользовательских свойствах. Цитата:
|
|||
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381
|
Цитата:
А уж у автора темы вообще простейшая учетная задача, на уровне курсового. Только её надо правильно делать. Чтобы потом всю жизнь не переделывать. Разумеется, надо сделать электронный файловый архив чертежей. Только с жестким порядком. Возможно - электронный архив типовых решений. И система учета документации - это база данных. Как сделать - я описывал в книге "САПР на базе AutoCAD - как это делается". |
|||
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,840
|
Лично для меня писать "заполнитель" файловых данных геморней, чем реализовать это через какую-нибудь" стандартную" БД. Необходимый SQL минимум изучается за 2 дня. У меня в "библиотеке" есть 3 (на 30 строк кода все всесте) функции по работе через ODBC: Создать соеденение, выполнить sql запрос, выполнить и получить список списков ответа. 98% всей работы с БД они закрывает - ни надо никакого гемора с файлами и пр. Работать с БД гораздо проще, "совместемей" и удобней - почитайте что-нибудь по БД и SQL - там ничего сложного нет - переделаете Ваши формы под БД и всего делов.
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
По идее там ничего сложного быть не может - объявить коннект к БД, выполнить запрос, закрыть коннект к БД.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 30.10.2010
Сообщений: 123
|
К первому посту прицепил архив с программой. Компилировал под AutoCAD 2011 rus. Инструкция внутри.
Так я и работаю со стандартной БД. Файл Access (.mdb) у меня там с помощью SQL редактируется, а как же иначе. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Мсье знает толк в извращениях... Пока не поздно, советую перейти на любой другой движок. Хоть на Firebird.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,840
|
Об чем речь, это "рекурсивка" в автолиспе подойдет для не очень больших таблиц (тыс до 20 записей) - т.к. хвостовая рекурсия не оптимизированна - где-то "валялась" то-же самое через while, но она "не красивая", до и в итоге все равно где предполагались большие запросы - в итоге пришлось "прогонять" не автолиспом - т.к. он "подторамаживал" на обработке.
Код:
на всякий случай источники данных создаються в контрольная панель->администрирование->источники данных(odbc), можно их и не создавать, а использовать т.н. "строку подключения" - типа "driver={MySQL ODBC 3.51 Driver}..." - все расписывать не буду соответствующей литературы навалом. (runsql соеденение sql_запрос) - выполнеят команду (getsql соединение sql-запрос) - список списков запроса. В автолиспе есть несколько подводных камней - не все типы данных он сможет преобразовать в лисп совместимые, работает "на прямую" только с ansi'шной кодировкой, ну и еще по мелочи - но для "большинства" операций этого функционала - за глаза. Цитата:
то Крыс - откравыть закрывать коннект "реально" только с локальной БД - с удаленой слишком долго.
__________________
Когда в руках молоток все вокруг кажется гвоздями. Последний раз редактировалось Дима_, 05.09.2011 в 23:12. |
|||
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,840
|
А бог его знает - вначале getsql была (давно), а runsql из нее выдернута "для инсертов" - но идея хорошая.
P.S. Там "по идее" есть еще косячок - что на каждой записи ее длинна читается - хотя по логике она одинаковая вседа должна быть, но почему-то стандарт рекомендует на каждую смотреть - возможно в каких-то СУБД возможны разное количество полей, но я такого не встречал.
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Просто длина поля MEMO, по-моему, может быть переменной.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 30.10.2010
Сообщений: 123
|
И всё-таки в голове у меня не укладывается:
Неужели в проектном отдельчике из трех человек (один из которых ГИП впридачу) правильным решением будет на одном из компов запускать сервер баз данных? Смахивает на выстрел из пушки по воробьям... Почитал тут немного про Firebird, какие-то головняки с русской кодировкой тут же всплыли... А у меня файл базы данных меньше мегабайта, с проектами за пол года (на досуге можно заменить на .odb в рамках перехода на OpenOffice). |
|||
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,840
|
А в чем здесь проблемма - все равно компьютер должен работать (что файл расшарить, что базу включить). Тут больше разговоров чем дела - если выделенный ip - можешь и "в интернет" выход настроить - ну будет "висеть" у тебя еще одна служба (посмотри в диспетчере задач сколько их там), а если ее правильно настроит, то никто ее случайно не сотрет, не испортит и пр. И тот-же OpenOffice прекрасно к ним подключаеться.
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
|
||||
Регистрация: 06.04.2009
Сообщений: 705
|
Это точно.
А вот когда объемы вырастут- тогда поменяется ваш социальный статус, и вы сможете приобрести готовую систему и переложить весь головняк на руководство или нового сисадмина, или закажете свою систему...
__________________
КазнитьØнельзяØпомиловать:eek: |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Что лучше подвесной кран или опорный? | Albert | Технология и организация строительства | 22 | 31.05.2017 23:32 |
REVIT: как лучше разложить сэндвич панели по стенам и кровли? | DJ AntOn | Revit | 6 | 14.08.2015 12:59 |
Какую марку алюминиевого листа лучше использовать? | karandaw | Машиностроение | 31 | 04.05.2011 13:15 |
Неужели это правда, что мы стали жить лучше? | dermoon | Разное | 224 | 19.08.2007 14:10 |
Что лучше: Mechanicks4 или Компьютерный справочник Анурьева? | Getr | Прочее. Программное обеспечение | 20 | 25.11.2004 15:00 |