Что сделано. Не буду говорить о серверной части. Она почти не
изменяется. Основная работа сейчас идет над клиентской частью.
Если смотреть с точки зрения пользовательского интерфейса, то
приложение имеет три раздела - работа со справочниками, работа с
бухгалтерскими операциями (ввод первичных бухгалтерских документов) и
работа с отчетами. Реализованы пока первые два. Работа с отчетами пока
не сделана, но это самая простая часть приложения, вся необходимая для
нее серверная компонента уже готова. Наиболее сложная - это вторая
часть - работа с операциями. Вся полезность приложения, все его
назначение сосредоточено именно в ней. По умолчанию ядро генерирует
пользовательский интерфейс для бухгалтерской операции (форму ввода
первичного документа) исходя из описания типовой бухгалтерской
операции. Но такая автоматическая генерация не всегда способна
обеспечить весь необходимый набор функций для ввода первичного
документа. Тут необходим скриптовый язык, который позволит "доразвить"
функционал, созданный по умолчанию. Скриптовый движок уже создан, но
требуется развитие его возможностей и постоянная его обкатка на новых
бухгалтерских операциях. Создан так же "мастер", который облегчает
создание новых операций.
Т.к. работа с операциями - это наиболее сложная компонента и работа
над ней еще не завершена, то я планирую сосредоточиться именно на ней.
Я буду добавлять новые бухгалтерские операции одну за другой и
обкатывать эту компоненту, при необходимости писать скрипты. Обкатку я
планирую делать на данных наиболее приближенных к реальным. Поэтому
мне уже нужен фунционал по автоматической загрузке накладных от
поставщика и его прайсов. Отсюда мои разговоры про CommerceML. Это
будет видимо самый распространенный вариант загрузки накладных из 1С.
Вообще автоматическую загрузку я считаю приоритетной вещью.
После того, как будет создан необходимый набор бухгалтерских операций
для работы в розничной торговле запчастями, я займусь третьей
компонентой приложения - отчетами.
Но все эти отчеты и операции останутся только на экране, если мы не
реализуем модуль печати. Им тоже нужно начать уже заниматься.
Из дальнейшего развития я вижу следующее. Необходимо будет более четко
проработать систему разграничения прав пользователей. Надо будет
сделать возможность загрузки-выгрузки конфигурации системы. И очень
желательно сделать систему обновления приложения и конфигурации через
Интернет.
Очень важным считаю развитие пользовательской документации.
В общем, работы еще очень и очень много.
В общем, о том, о чем мы с тобой разговаривали.
Это называется проектирование.
Чувствую, что настало время сосредоточиться на документации для
разработчика, иначе не будет никакого продвижения вперед, а будем как
лебедь, рак и щука.
У меня конечно нет опыта разработки такой документации, но мне
представляется, что не получится одной схемы приложения в целом. На
одной схеме не отобразить все аспекты взаимодействия модулей. Можно
сделать набор схем, которые будут отображать разные сценарии
взаимодействия модулей (открытие списка документов, создание нового
документа, добавление записи в документ, вызов скриптов и т.п.). Т.е.
тех сценариев, которые наиболее важны для понимания работы программы.
Про цели разработки. Не понимаю, почему этот вопрос мне задают
постоянно. Мол цели не определены, поэтому мы будем топтаться на
месте. Ну вроде бы очевидно же, что не полет на Марс является целью, а
таковой является попытка создать кроссплатформенную бухгалтерскую
платформу. Не будем сравнивать ее с 1С, хотя назначение то же самое. С
помощью этой платформы можно будет создавать конфигурации (термин из
1С за неимением другого), которые и будут определять круг потребителей
"софтины".
В конфигурацию входят:
1. Набор справочников и запросов для предметной области, а так же
специализированных форм для их просмотра и скриптов, если это
необходимо
2. План счетов и список типовых операций
3. Скрипты и формы для тех типовых операций, которые нуждаются в
дополнительном развитии функционала.
4. Набор шаблонов и скриптов для первичных документов
5. Набор шаблонов, запросов и скриптов для отчетов
6. Список пользователей и их полномочий распоряжаться справочниками,
операциями и отчетами.
Первая конфигурация будет для розничной торговли запчастями.
Про среду исполнения - не понял, что имеется в виду.
PS. не лаяться - ок? Без холиваров - просто мои пять.
26 февраля 2012 г. 10:42 пользователь Vladimir
<Morozov...@mail.ru> написал:
2Vladimir:
Одной схемой, конечно, не обойдёшься.
Потому я и говорил о трёх схемах.
Про очевидные цели - неа. Мне не очевидны. Я вообще все делаю just for
fun. В отсутствие конкретных и прописанных целей мои развлечения будут
рушить весь проект раз за разом.
Среда исполнения. Пример. Локальная сеть небольшого предприятия.
Хорошая пропускная способность, слабые машины, удалось насобирать на
более-менее нормальный сервер, на котором, кроме потсгреса, крутится
еще что-то.
Это нужно для того, чтобы услышав что-то воде "Зачем запрашивать
данные в отчет, ведь они уже в форме. Давайте экономить, вдруг
пользователь работает через интернет" я мог со спокойной совестью
отправить говорящего не к чтению литературы, а к прописанным целям. И
вытекающей среде. Которая кагбе намекает - ну нет там работы в
интернетах. Совсем. А если есть - то с нормальным каналом.
Гуглил пяток лет назад.
1. php. Мне лично - неудобно.
2. несопоставимо с нашим планом счетов (везет же ж людям...)
> 3. Несопоставимы. Именно потому питон и не нужен - он до ECMA недотягивает.
No comments
Да зря, вообще-то, не комментируешь.
Если делаешь заявления, аргументируй их конкретными примерами.
Потому что, как видишь, декларировать без аргументации можно и
совершенно обратные вещи.
Да там немного вообще переписать...
Привести план счетов РФ к общемировым стандартам - и всё.
Т.е. не стопиццот счетов - а "пришло - ушло - осталось".
> 2. тут мне намедни поступил намек на заказ онлайновой бухгалтерии.
> Ничего такого - просто первичка (пока). Если вся бизнес-логика
> заключена в PL/SQL в постгресе - пуркуа бы не совместить? Qt-морда /
> веб-морда - какая разница?
Идея хорошая насчет совмещения. Но здесь не вся бизнес-логика
обрабатывается сервером. На сервере обрабатывается только чисто
бухгалтерская составляющая. Чтобы понять, как все работает нужно
начать очень подробно разбирать какой-нибудь пример (бизнес-
прецедент).
> 3. еще хорошо бы скриптование - [и] на питоне. Никакой религии -
> просто выразительность, возможности и библиотеки питона несопоставимы
> с ECMA-script.
Возможно. Если есть такой интерпретатор Питона, который можно встроить
в приложение, написанное на С++. Скриптование выделено в отдельный
слой, поэтому приложение не потребуется целиком переписывать. По
крайней мере так задумано, и если что, то этого нужно добиться. Но
пока отвлекаться на Питон мы не будем.
О©╫ О©╫О©╫О©╫ О©╫О©╫О©╫О©╫ C++ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ python, О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ C++... О©╫.О©╫. О©╫О©╫О©╫О©╫
callback... О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫/О©╫О©╫О©╫О©╫О©╫О©╫О©╫
P.S. Не пишите, пожалуйста, ответы в почтовом клиенте, иначе здесь
(http://groups.google.com/group/qbalance/browse_thread/thread/
abf202ac737d1b14) получается каша.
От себя могу добавить, что по моему небольшому опыту разработка
приложения на PyQt, отладка и перепиливание на C++ занимает в
несколько раз меньше времени, чем написание с нуля. Это касается
небольшого приложения с отладкой каких-то тонких моментов (типа http,
базы, эти ваши MVC).
После перепиливания (поиск/замена) получается отлаженная логика и
готовая пачка классов - осталось правильно создавать объекты.
В статье мы видим, как человек
Ненене, это личное мнение. Я могу писать как на C++ так и на питоне,
но в первом случае раздражает, что 90% времени борешься с сегфаултами,
а не с логикой.
Просто если будет возможность _быстро_ включить в qbalance какую-то
свою логику на питоне, потыкать палочкой - а потом передать C++-
программеру - это было бы прекрасно.
Я правильно понимаю, что бизнес-логика делается на PL/SQL?
5 марта 2012 г. 16:51 пользователь Vladimir <Morozov...@mail.ru> написал:
5 марта 2012 г. 19:21 пользователь Vladimir <Morozov...@mail.ru> написал:
Это всё понятно.
Вопрос - какими средствами.
5 марта 2012 г. 20:13 пользователь Александр Руденко
Хотя - дело принципа, конечно.
5 марта 2012 г. 20:21 пользователь Александр Руденко
<drake...@gmail.com> написал:
Мне так кажется...
5 марта 2012 г. 20:39 пользователь Александр Руденко
Видимо - полезно было бы начать сначала:
* цель проекта (что)
* целевая аудитория (кому)
* область детельности (где)
* ключевые преимущества
* финансы (кем)
Если это проект just-4-fun - можно не писать ничего.
5 марта 2012 г. 20:44 пользователь Александр Руденко
Все же для понимания необходим пример. Назовите пример бизнес-логики.
А если мне нужен только оперативный учет?
Наверное придется все же когда-нибудь написать F.A.Q. и отсылать к
нему. Последнее высказывание не понял на чем основано.
Видимо проблема в том, что у вас стереотипы из 1С. Разве оперативный
учет не подразумевает ведение бух.учета (создания проводок)? А как
тогда узнать остатки товара или задолженность перед поставщиками?
Настаиваю рассмотреть подробно какой-нибудь бизнес-прецедент (пример
бизнес-логики). Выберите какой.
Ни в коем случае.
Оперативный учет - это когда я хочу знать - сколько у меня _реально_
ресурсов (в деньгах):
1. есть
2. будет
3. не будет
> А как тогда узнать остатки товара или задолженность перед поставщиками?
Ну не из остатков по бухсчетам, ессно.
Например: https://docs.google.com/document/d/1mX8K2puHou1d_uo7Vrou4gc-KPwvS29FlGk9IZFhXG0/edit
5 марта 2012 г. 21:22 пользователь Vladimir <Morozov...@mail.ru> написал:
5 марта 2012 г. 21:59 пользователь Александр Руденко
<drake...@gmail.com> написал: