Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Делаю свободную бух.программу на PostgreSQL + Qt4. / 25 сообщений из 326, страница 1 из 14
22.10.2010, 17:32
    #36915196
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
Доброго времени суток всем!

Знаю, какое отношение сложилось на этом форуме к самописным программам, но решил написать. В свободное время занимаюсь созданием свободной бухгалтерской программы универсального назначения. Сразу немного о предистории, чтобы было ясно, что это возникло не на пустом месте. Занимаюсь программированием с конца 80-х. Начал писать бухгалтерские приложения примерно с 92-го на FoxPro (склад и начисление зарплаты). Для того, чтобы общаться с бухгалтерами на одном языке, изучил основы бухучета. Потихоньку начало приходить понимание того, как должна выглядеть БД для хранения бухгалтерских данных. Написал свою первую универсальную бух.программу, которую можно было приспособить под разные задачи путем настройки проводок и формул к ним. Это программа долгое время работала в нескольких организациях на материалах, на зарплате, на взаиморасчетах и в ЖКХ. Потом занялся мелким бизнесом - торговлей хозтоварами и автозапчастями. Старые программа на FoxPro уже не подходила с точки зрения хранения больших объемов данных о продажах и распределенной работы. После поисков внятной архитектуры с точки зрения ООП, с третьей попытки написал новую программу на Visual FoxPro + MSSQL. Запустил ее в работу в своем бизнесе в 2002 году. После знакомства с Linux решил начать переход на свободное ПО и переписал серверную часть на PostgreSQL. Сейчас вот переписываю клиентскую часть на Qt4. Связка Visual FoxPro + PostgreSQL продолжает работать у меня и нескольких других (не моих) магазинах. Я переехал в другой город и подключаюсь к своей базе через SSH/VPN. В последнее время пишу и на 1Сv8.1.

О самой системе и о том, что сделано.
По серверной части. На сервере хранятся все бухгалтерские данные. Основные таблицы - сальдо (вся информация по остаткам о одной таблице), проводки (информация по всем проводкам в одной таблице), документы (все документы в одной таблице), счета (план счетов), типовые операции (описание проводок для каждой хозяйственной операции) и различные справочники (количество по необходимости). В каждом справочнике два обязательных поля (код, имя), остальные поля по необходимости (в т.ч. ссылки на другие справочники). Имеются триггеры, которые обеспечивают принцип двойной записи (для каждой проводки триггер изменяет сальдо для дебетового и для кредитового счета), контроль целостности БД (это чтобы не удаляли записи в справочниках, на которые в БД есть ссылки) и т.п. Отдельные функции обеспечивают добавление новых строк в бухгалтерских документах и удаление старых с учетом содержимого таблицы типовых операций. Есть еще функции и просмотры для отчетности и т.д. и т.п.
Клиентская часть обеспечивает GUI. Все экранные формы представления справочников, документов, отчетов формируются автоматически, хотя можно создать и подключить свои формы. Клиентская часть обеспечивает математическую обработку хозяйственных операций на основе скриптов (было на языке FoxPro, будет на ECMAScript) и таблицы проводок, формирование первичных документов (накладных, счетов-фактур и т.п.) и отчетов (обороты в различных разрезах, остатки, баланс и т.п.).
На сегодняшний день давно уже написана и обкатана серверная часть. Работа триггеров без замечаний - не было ни одного случая, чтобы неправильно формировался баланс.
По клиентской части на Qt4: сформирована архитектура приложения (за основу взято приложение на Visual FoxPro). Правильно создаются экранные формы, отработана методика создания и подключения в приложение внешних форм. Отработана методика работы со скриптами. Намечена, опробована, но требует доработки методика выгрузки документации и отчетов в OpenOffice.

Сделано не мало, но много еще нужно сделать. Если есть желающие присоединиться - пишите на почту prog_123@mail.ru. Проект открытый и свободный. Т.к. фундамент давно уже заложен и стены уже почти достроены, то хотелось бы видеть тех, кто готов дорабатывать созданное, а не спорить о других вариантах (ненавижу пустые споры, приветствую решения в рамках сложившейся ситуации). Готов выслать исходники с тестовой базой данных. На SourceForge.org это выложу, когда обкатаю тестовые примеры. Пока у проекта нет названия, предлагайте варианты (мой вариант пока QBalance).

Это ни в коем случае не альтернатива 1С. Это будет еще одна бесплатная программа для мелкого (может быть и среднего) бизнеса.
...
Рейтинг: 0 / 0
24.10.2010, 14:15
    #36916568
trdm_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
MoroZ.RuДоброго времени суток всем!
Это ни в коем случае не альтернатива 1С. Это будет еще одна бесплатная программа для мелкого (может быть и среднего) бизнеса .
Это большое обобщение.
ПС. Но начинание приветствуется...
...
Рейтинг: 0 / 0
24.10.2010, 14:50
    #36916593
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
trdm_,

Спасибо за поддержку. Это будет программа для мелкого бизнеса, торговли, для тех, кто на ЕНВД. То, в чем я сам варюсь. Но можно развить план счетов и список типовых операций (наборов проводок) и сделать среду для тех, кто является плательщиком НДС. Это при благоприятном сценарии развития.
...
Рейтинг: 0 / 0
24.10.2010, 15:03
    #36916603
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
...
Рейтинг: 0 / 0
24.10.2010, 15:18
    #36916616
trdm_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
MoroZ.Rutrdm_,
Спасибо за поддержку. Это будет программа для мелкого бизнеса, торговли, для тех, кто на ЕНВД. То, в чем я сам варюсь. Но можно развить план счетов и список типовых операций (наборов проводок) и сделать среду для тех, кто является плательщиком НДС. Это при благоприятном сценарии развития.
Данных маловато о внутренней структуре.
Хости проект, можно и на ( http://code.google.com) и давай ссылку на svn.
Будем посмотреть и подумать о перспективах.
Формы генерируются - это и хорошо и плохо.
Вопрос в том как генерируются. Если шаблон меня нельзя и управлять нельзя (как например в старой 1С) то это фейк - убожество получается. У меня например подавляющее кол-во форм подвергается кастомизации после их генерации.
Очень много проверок ПЕРЕД записью объекта в базу: контроль дублей, несоуразностей, вандализма, просто нужных для работы полей, контроль, контроль и контроль.
...
Рейтинг: 0 / 0
24.10.2010, 15:56
    #36916652
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
trdm_
Формы генерируются - это и хорошо и плохо.
Вопрос в том как генерируются. Если шаблон меня нельзя и управлять нельзя (как например в старой 1С) то это фейк - убожество получается. У меня например подавляющее кол-во форм подвергается кастомизации после их генерации.

Как именно будет выглядеть форма при генерации зависит от многих параметров. Для справочников - это полномочия пользователя, связность с другими справочниками, наличие картинок; для хозяйственных операций - это опять же полномочия, список проводок этой операции, какие справочники задействованы в этих проводках, и еще параметры, которые указываются при описании хозяйственной операции. Подавляющее большинство форм генерируются в виде, пригодном для работы без изменений. Для каждой формы генерируется шаблон, который можно загрузить в Qt Creator (кто знаком с библиотекой Qt4), который затем можно изменить - добавить новые или удалить имеющиеся виджеты. Измененный шаблон сохраняется в определенном каталоге (либо в будущем в БД) и при запуске программы используется вместо генерируемого по умолчанию.

Сегодня-завтра напишу краткий README по инсталляции, разберусь куда и как выложить. Сразу предупреждаю, что проект еще сыроват.
...
Рейтинг: 0 / 0
24.10.2010, 17:40
    #36916732
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
Не то что сыроват - сырой.
...
Рейтинг: 0 / 0
24.10.2010, 20:59
    #36916902
Frees
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
MoroZ.Ru как вы представляете себе манетизацию Вашего проекта?
...
Рейтинг: 0 / 0
24.10.2010, 21:40
    #36916928
iscra_fm
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
Frees MoroZ.Ru как вы представляете себе манетизацию Вашего проекта?
в заголовок темы вынесено все о м О нетизации.
...
Рейтинг: 0 / 0
24.10.2010, 22:55
    #36916983
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
iscra_fmFrees MoroZ.Ru как вы представляете себе манетизацию Вашего проекта?
в заголовок темы вынесено все о м О нетизации.
Ну человек же хочет знать, как зарабатывают на проектах с открытым кодом.

Ну во-первых, для меня остро вопрос денег не стоит - мой небольшой бизнес меня неплохо кормит и не требует много внимания благодаря программе-прототипу этого проекта. Во-вторых я подрабатываю, автоматизируя бизнес (опт автозапчастей) в нашей головной компании, т.е. пишу на 1С 8.1. Ну а в будущем, если этот проект удастся развить, я надеюсь подзаработать на поддержке, разработке по заказу, продаже каких-то специальных модулей, может еще что-то (например реклама), может быть это будет спонсорская помощь, пожертвования. Ну как обычно зарабатывают проекты с открытым кодом. Мне просто интересно создать такой проект. Если не удастся развить - то мне достаточно будет просто знать, что он кому-нибудь пригодился и то, что я получу в результате некоторый опыт.
...
Рейтинг: 0 / 0
24.10.2010, 23:18
    #36916993
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
Кому интересно - можете скачивать qbalance.sourceforge.net .

Проект сырой, пример не доделан, но запускается. Выкладываю, чтобы вы могли посмотреть структуру базы данных и архитектуру клиентского приложения и навести критику ;). Архив пока рассчитан на Linux, но у меня в принципе компилируется и под Windows. Через несколько дней выложу для виндов, если интересно. С SourceForge.org никогда раньше не работал, буду изучать по ходу дела.
...
Рейтинг: 0 / 0
25.10.2010, 00:09
    #36917023
user1234567
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
MoroZ.Ru,

Под Windows QT 4.7 не запустилось, и примера sql базы для загрузки в postgresql нет ....
...
Рейтинг: 0 / 0
25.10.2010, 06:41
    #36917145
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
User1234567MoroZ.Ru,

Под Windows QT 4.7 не запустилось, и примера sql базы для загрузки в postgresql нет ....

Под Windows нужно перекодировать. Пример базы находится в подкаталоге /src/initdb. Погодите немного, выложу для Windows уже откомпилированное приложение.
...
Рейтинг: 0 / 0
30.10.2010, 19:35
    #36929332
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
Сделал загрузку первоначальной базы. Загружать базу теперь можно не выходя из графической среды.
Выложил на qbalance.sourceforge.net откомпилированное приложение для Windows с исходниками и исходники для Linux. Написал маленькое руководство по загрузке и пользованию справочниками. Смотрите.
...
Рейтинг: 0 / 0
30.10.2010, 21:00
    #36929409
vill_ager
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
MoroZ.Ru,
ругается:
Driver not loaded Driver not loaded
потом предлагает создать базу
потом ругается, что не удалось создать соединение с сервером

postgre 8.4 на виртуальной XP, порт 5433
...
Рейтинг: 0 / 0
30.10.2010, 22:19
    #36929453
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
vill_agerMoroZ.Ru,
ругается:
Driver not loaded Driver not loaded


Очевидно программа не может найти драйвер PostgreSQL. Проверьте, что драйвер скомпилировался и поместите файл qsqlpsql4.dll в каталог с программой. Для компиляции драйвера необходим дистрибутив PostgreSQL с хэдингами. Я брал здесь . Или скачайте архив для Windows с qbalance.sourceforge.net , там уже есть драйвер.
...
Рейтинг: 0 / 0
30.10.2010, 23:26
    #36929502
trdm_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
MoroZ.RuСделал загрузку первоначальной базы. Загружать базу теперь можно не выходя из графической среды.
Выложил на qbalance.sourceforge.net откомпилированное приложение для Windows с исходниками и исходники для Linux. Написал маленькое руководство по загрузке и пользованию справочниками. Смотрите.
А под фраерберд инсталяху не сотворишь?
Что-бы с постгресом не возиться?
...
Рейтинг: 0 / 0
30.10.2010, 23:52
    #36929518
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
trdm_
А под фраерберд инсталяху не сотворишь?
Что-бы с постгресом не возиться?

К сожалению с FirebirdSQL не знаком, но судя по материалам из Wiki она поддерживает триггера и хранимые процедуры. У меня в программе предусмотрен слой абстрагирования от БД - т.н. паттерн "фабрика". Но как он (слой абстрагирования) будет работать на деле я пока не знаю. Скорее всего без исправлений не обойдется. Нужно просто пробовать писать серверную часть для другой базы, а затем пробовать подключать базу к клиенту и по ходу править код. Но в любом случае это быстро не получится. Так что обещать скорое решение не могу.
...
Рейтинг: 0 / 0
30.10.2010, 23:53
    #36929519
vill_ager
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
MoroZ.Ru
Или скачайте архив для Windows с qbalance.sourceforge.net , там уже есть драйвер.
его и пробовал :(
...
Рейтинг: 0 / 0
31.10.2010, 00:33
    #36929535
user1234567
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
MoroZ.Ru,

У меня тоже Windows вариант не смог найти базу ... ;(
...
Рейтинг: 0 / 0
31.10.2010, 22:04
    #36930164
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
Попробовал сегодня на виртуальной машине. Действительно не работает. Буду исправлять.
...
Рейтинг: 0 / 0
04.11.2010, 14:02
    #36937987
joker 79
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
Раз уж будешь переделывать... пара нюансов (понятное дело что имхо, но с этим я столкнулся пока пробовал собрать линух-версию (и под вин и под лин))

1. В *.ui добавил бы <?xml version="1.0" encoding="UTF-8"?> - ибо может быть разное
2. В винде совсем не обязательно вешать везде win1251 кодировку. Тем более у тебя сорцы в utf-8. Вполне нормально будет указать utf-8 (в свойствах проекта). Тогда не нужны будут кодеки и головняк с правкой сорцов под каждую ось.
3. При создании новой базы делается вызов psql, но отрабатывает некорректно.

Пока все т.к. прогу так и не запустил :) - что то с правами в базе накручено, надо с постгри разбираться...
...
Рейтинг: 0 / 0
06.11.2010, 10:31
    #36939940
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
Спасибо за ценные замечания, обязательно учту.
...
Рейтинг: 0 / 0
08.11.2010, 10:56
    #36941635
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
Разобрался с проблемой запуска под Windows. Написал в руководстве как ее запускать. Нужно сначала установить Microsoft Visual C++ 2005 Redistributable Package (x86) версии 8.0.56336 или выше. Отдельно этот пакет я не нашел, только в составе сборки (файл VCR_x86.exe):

- Microsoft Visual C++ 2005 x86 Redistributable - 8.0.59193
- Microsoft Visual C++ 2008 x86 Redistributable - 9.0.30729.4148
- Microsoft Visual C++ 2010 x86 Redistributable - 10.0.30319

Если у кого есть отдельно первый пакет, дайте пожалуйста знать. Кроме этого не хватало некоторых библиотек. У меня под виртуальной машиной программа запускается.

Над запуском под Linux я еще поработаю.
...
Рейтинг: 0 / 0
08.11.2010, 12:17
    #36941861
MoroZ.Ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Делаю свободную бух.программу на PostgreSQL + Qt4.
Загрузка исходной базы работает пока только для локального сервера и порта 5432.
...
Рейтинг: 0 / 0
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Делаю свободную бух.программу на PostgreSQL + Qt4. / 25 сообщений из 326, страница 1 из 14
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]