LXF97:Ананас

Материал из Linuxformat.

Перейти к: навигация, поиск
Ананас

Содержание

Первый взгляд на Ананас

ЧАСТЬ 1 Андрей Паскаль научит отличать спелый Ананас не только по виду и запаху, покажет несколько приемов препарирования чудо-фрукта и… даст пару советов по уходу за офисными Ананасами.

За забавным названием «Ананас» скрывается — «кто бы мог подумать!» — полноценная среда разработки и исполнения со своим языком программирования, редактором экранных диалогов, шаблонами печатных форм, метаданными и удобным редактором структур данных. Добавим сюда архитектуру «клиент-сервер» с поддержкой наиболее популярных свободных SQL-серверов MySQL, PostgreSQL, умение выживать в среде Linux и Windows и получим (ого!) свободную платформу для автоматизации бизнес-процессов.

Итак, обо всем по порядку. Да, действительно, Ананас — это не просто еще одна программа для печати платежных поручений: Ананас - первая учетная платформа для Linux. Кроме того, приложения, разработанные на платформе Ананас, одинаково хорошо работают и под Linux, и под Windows.

Чем же Ананас отличается от хорошо всем известных интегрированных сред программирования, таких как NetBeans, Eclipse или Borland Kylix? — спросит прозорливый читатель. Неужели Ананас лучше, или же всерьез собирается конкурировать с известными универсальными инструментами? Разумеется, нет.

Ананас является специализированной платформой, средой разработки учетных бизнес-приложений. Отсюда и вытекают отличия, заложенные при проектировании. Его не следует использовать для написания почтовых серверов или драйверов, управляющих оборудованием, если только вам не доставляет удовольствие занятие, напоминающее вычерпывание супа шумовкой.

Если при программировании универсальным инструментарием программист живет в поле таких понятий, как Класс, Объект, Запись, Поле реляционной таблицы, то программирование со вкусом Ананаса составлено из букета таких понятий, как Документ, Справочник, Регистр, Журнал, Отчет.

Для чего это сделано? А для того, чтобы программист мог проще находить общий язык с заказчиком, который живет примерно в том же понятийном мире. Для того, чтобы при составлении программы программист оперировал как можно более высокоуровневыми понятиями и достигал результата как можно с меньшими затратами, не заглядывая внутрь без особой необходимости.

Ну и хватит умствований. Давайте просто посмотрим, из чего же состоит приложение, разработанное на платформе Ананас. Но сначала решим задачу установки Ананаса.

В свое время я был поражен, узнав, что ананасы произрастают в траве, как арбузы, а не на пальмах, как финики. Поэтому давайте правильно сориентируемся на местности и определим, где же взять Ананас. Так как нас интересуют только спелые, готовые к употреблению Ананасы, придется проявить выдержку и смекалку при поиске, отборе и тестировании…

Первым местом, которое следует посетить всякому уважающему себя детективу — пардон, опытному пользователю — является, если не считать DVD-диск с вашим любимым дистрибутивом Linux (а также DVD текущего номера Linux Format), сайт проекта Ананас http://ananas.lrn.ru. Там вам скажут, где лежит продукция цеха по упаковке спелых Ананасов в формат, установленный таможенным кодексом вашего государства, или, другими словами, менеджера пакетов вашего дистрибутива.

По обнаружении подходящих пакетов вам не потребуется много знаний для их установки. Ниже я расскажу, как быть, если подходящих к вашему дистрибутиву Linux пакетов нет, или вы не тот человек, который, имея доступ к свежему коду в репозитории CVS, станет довольствоваться упаковкой с датой изготовления полугодичной давности.

Отправляясь в волшебное путешествие, где вас ждут трудности и испытания, помните одно: вам всегда помогут на форуме проекта. Стоит лишь правильно задать вопрос, и вы тут же получите на него исчерпывающий ответ. Форум лежит в глухом, заброшенном местечке с неказистым адресом http://ananas.lrn.ru/phpBB2/.

Ананас из исходников

Чтобы собрать Ананас из исходных текстов, вам потребуются следующие обязательные ингредиенты: mysql-devel, qt-devel, qt-qsa-devel. Названия пакетов могут меняться в зависимости от дистрибутива. Приведенные выше именования пакетов и ниже — названия файловых путей приняты в Fedora 7.

После этого — тянем-потянем Ананас:

cvs -d :pserver:anonymous@www.leaderit.ru:/var/cvs login

Система запросит пароль. В ответ нажмите Enter.

cvs -d :pserver:anonymous@www.leaderit.ru:/var/cvs co -r release-094b ananas

В последней команде стоит обратить внимание на опцию -r release-094b. Она задает версию Ананаса, которая будет вытянута в результате выполнения команды.

Возможно, ко времени публикации статьи выйдет более свежая версия; тогда опцию следует сменить на release-XYZb, где X,Y и Z соответствуют номеру версии Ананаса, которая указывается в формате ananas-X.Y.Z.

Самые смелые могут и вовсе не указывать эту опцию, чтобы получить исходный код Ананаса с самыми свежими изменениями, которые разработчики Ананаса поместили в репозиторий вчера или даже сегодня (главное, чтобы не в момент запуска вами команды!):

cvs -d :pserver:anonymous@www.leaderit.ru:/var/cvs co ananas

Репозиторий проекта поддерживается разработчиками в состоянии постоянной готовности к сборке. Это гарантирует успешную компиляцию полученного кода, но не его работоспособность.

Следующая пара команд запустит процесс сборки Ананаса.

cd ananas
make

После успешного завершения процедуры потребуется всыпать в консоль вагон и маленькую тележку команд для правильной установки Ананаса в систему. Радует лишь то, что cut-n-paste еще никто не отменял. Разумеется, тут не обойтись без прав пользователя root.

Сначала установим файлы в систему:

sudo cp src/ananas/ananas /usr/bin/
sudo cp src/designer/ananas-designer /usr/bin/
sudo cp -P src/lib/libananas.so* /usr/lib/
sudo cp src/plugins/libananasplugin.so /usr/lib/
sudo ln -s /usr/lib/libananasplugin.so /usr/lib/qt-3.3/plugins/designer/
sudo mkdir -p /usr/share/ananas/translations
/usr/lib/qt-3.3/bin/lrelease translations/*.ts
sudo cp translations/*.qm /usr/share/ananas/translations/
sudo cp -r src/designer/templates /usr/share/ananas/
sudo mkdir -p /usr/share/ananas/inventory
sudo cp applications/inventory/*.odt /usr/share/ananas/inventory/
sudo cp applications/inventory/*.ods /usr/share/ananas/inventory/
sudo mkdir -p /usr/share/ananas/extensions
sudo cp src/extensions/libaext_meta.so /usr/share/ananas/extensions/
sudo cp src/extensions/libaextxml.so /usr/share/ananas/extensions/
sudo cp /src/extensions/libaexttext.so /usr/share/ananas/extensions/
sudo mkdir -p /etc/ananas
sudo cp applications/inventory/inventory.cfg /etc/ananas/
sudo cp applications/inventory/inventory.rc /etc/ananas/
sudo cp applications/inventory/inventory-demo.cfg /etc/ananas/
sudo cp applications/inventory/inventory-demo.rc /etc/ananas/

Затем создадим и наполним демонстрационную базу данных на MySQL-сервере, подразумевая, что вирус паранойи информационной безопасности еще не добрался до вас и вы не меняли пароль пользователю root сервера MySQL после установки.

mysqladmin -u root create ananas_system
mysqladmin -u root create ananas_inventory
mysqladmin -u root create ananas_inventory_demo
mysql -u root ananas_inventory < applications/inventory/inventory.sql
mysql -u root ananas_inventory_demo < applications/inventory/inventorydemo.sql

На этом процедуру установки можно считать завершенной. Попробуем попрактиковаться — к счастью, создатели Ананаса предусмотрели для вас кое-какие демо-приложения. Для работы с приложением «Оперативный учет» следует запустить Ананас командой

ananas

и выбрать бизнес-схему с соответствующим названием.

Знакомство с интерфейсом

Если программа была правильно установлена, на экране появится окно следующего вида (Рис. 1):

Рис. 1. Диалог выбора бизнес-схемы при запуске программы.
Рис. 1. Диалог выбора бизнес-схемы при запуске программы.

Внешний вид и содержание окна может отличаться от приведенного здесь примера в зависимости от версии и настройки программы, настроек вашей графической среды, но в заголовке (шапке) окна обязательно будет надпись Список бизнес-схем, а справа кнопки, показанные на снимке экрана.

Бизнес-схема

Так называют приложение, разработанное на платформе Ананас, потому что помимо собственно кода приложения, сюда включается описание структур данных приложения (метаданные) и база данных с хранящейся в ней информацией. Жизненный цикл бизнес-схем Ананаса также несколько отличен от жизненного цикла классических приложений/программ. Бизнес-схемы Ананаса рассчитаны на модификацию во время эксплуатации, без потери уже занесенных данных. Таковы требования реального бизнеса в реальной жизни. Вообще разработчики любят использовать слово «бизнес» в своей терминологии. Работая с Ананасом, вы также столкнетесь с такими понятиями, как бизнес-объект, бизнес-процесс.

В списке в средней части окна будут две строки с надписями: «Оперативный учет» и «Оперативный учет. Демо.».

Рис. 2. Главное окно приложения «Оперативный учет. Демо» после первого запуска.
Рис. 2. Главное окно приложения «Оперативный учет. Демо» после первого запуска.

Бизнес-схема «Оперативный учет. Демо.» содержит демонстрационную базу данных. Ее мы и выберем (Рис. 2), чтобы ознакомится с возможностями работы приложения и увидеть примеры заполнения справочников и документов. Бизнес-схема «Оперативный учет» предназначена для начала реальной работы и не содержит никакой информации в базе данных, а также и в справочниках.

Каждая бизнес-схема использует свою базу данных и является полностью автономной и не связанной с другой бизнес-схемой. То есть, если, работая с демонстрационной бизнес-схемой, вы занесете в справочник продавцов новую организацию, она не появится в справочнике продавцов рабочей бизнес-схемы.

Таких бизнес-схем может быть несколько, что позволяет вести учет при помощи одной программы сразу для нескольких субъектов или разбивать учет на периоды (например, годичные) и для каждого периода выделять отдельную бизнес-схему.

После выбора бизнес-схемы на экране появится основное окно программы, из которого осуществляется доступ ко всем возможностям приложения.

Какие бывают бизнес-схемы?

Помимо бизнес-схемы, поставляемой с дистрибутивом Ананаса, существует ряд бизнес-схем, разрабатываемых и поддерживаемых независимыми разработчиками. На сегодня в качестве примера можно привести такие бизнес-схемы, как «Учет транспортных услуг (логистика)», «Оперативный учет в оптовой торговле», «Спутник. Учет заявок». Количество и разнообразие бизнес-схем растет по мере освоения программирования на Ананасе новыми разработчиками. Разумеется, не все бизнес-схемы доступны (или будут доступны) свободно. Тем не менее, открытых бизнес-схем всегда будет достаточно для повседневного извлечения вкусной пользы из Ананаса.

Бизнес-схема «Оперативный учет. Демо.» достаточно проста в освоении, чему, несомненно, способствуют примеры введенных документов и заполненные справочники. Кроме того, разработчики позаботились и о пользователях-новичках, снабдив приложение подробным 50-страничным руководством, где по шагам и экранным снимкам разбирается каждая возможность бизнес-схемы «Оперативный учет».

Повседневную, будничную работу пользователя бизнес-схемы «Оперативный учет» Ананаса по большому счету можно разделить на два вида деятельности:

  • Оформление документов, которые называются в бухгалтерском учете первичными учетными документами. Оформление подразумевает создание новых электронных документов, их заполнение и распечатку. Здесь можно назвать такие документы, как накладные на товар, кассовые ордера, счет, банковские поручения.
  • Подготовку отчетов/печатных документов для налоговой инспекции или для решения собственных задач по анализу товарных запасов, денежных расчетов, задолженностей и прочих показателей бизнеса.

Разумеется, присутствуют и разовые, эпизодические работы, необходимые для поддержки справочника Контрагентов (продавцов, покупателей) и Каталога товаров в актуальном состоянии.

Рис. 3. Работа со справочником констант.
Рис. 3. Работа со справочником констант.

Наименьшее количество хлопот доставляет справочник Константы (Рис. 3): будучи заполненным первым в самом начале эксплуатации Ананаса, он практически не меняется со временем. Справочник Константы хранит такую редко меняющуюся информацию, как реквизиты вашей организации, ФИО директора, бухгалтера или просто ваши данные, если вы предприниматель.

Каталог товаров

Рис. 4. В Каталоге товаров отображается количественный остаток по состоянию на текущий момент времени.
Рис. 4. В Каталоге товаров отображается количественный остаток по состоянию на текущий момент времени.

Для хранения информации о товарах в бизнес-схеме «Оперативный учет» используется многоуровневый Каталог товаров (Рис. 4). По каждому товару в каталоге отражается состояние остатков в количественном выражении по состоянию на текущий момент времени.

Остаток меняется автоматически по мере оформления приходных и расходных накладных, свидетельствующих соответственно о покупке и продаже товаров, в них указанных.

Таким образом, пользователь бизнес-схемы «Оперативный учет» Ананаса в любой момент времени имеет достоверную информацию о состоянии запасов товаров и может своевременно спланировать их пополнение.

Печать документов и отчетов

Рис. 5. Счет на приобретение товара, сформированный для и открытый в OpenOffice.org Ананасом.
Рис. 5. Счет на приобретение товара, сформированный для и открытый в OpenOffice.org Ананасом.
Состав объектов бизнес-схемы «Оперативный учет»:
  • Справочники
    • Справочник контрагентов, отображающий информацию о расчетном балансе каждого контрагента
    • Справочник товаров, отображающий информацию по остаткам товаров в количественном и денежном выражении на складе Вспомогательные справочники
    • Справочник Складов
    • Справочник реквизитов (констант)
  • Документы
    • Счет
    • Приходная накладная
    • Расходная накладная (ручной ввод или автоформирование по Счету)
    • Платежное поручение
    • Банковская выписка
    • Приходный кассовый ордер
    • Расходный кассовый ордер
  • Журналы
    • Общий
  • Специальные журналы
    • Журнал реализации
    • Журнал прихода
  • Отчеты
    • Движение товаров
    • Ведомость по поставщикам и покупателям
    • Ведомость по кассе
    • Книга покупок
    • Книга продаж
  • Печатные формы
    • Печатная форма расходной накладной
    • Печатная форма приходной накладной
    • Печатная форма платежного поручения
    • Печатная форма банковской выписки
    • Печатная форма ПКО
    • Печатная форма РКО
    • Печатная форма счета
    • Печатная форма счета-фактуры

Платформа Ананас предоставляет программисту возможность создания отчетов в формате OpenOffice.org, HTML или любом другом формате документов, хранимых в виде ASCII-файла.

Разработчики бизнес-схемы «Оперативный учет» сделали ставку на использование OpenOffice.org как на наиболее удобный для пользователя пакет подготовки документов для печати (Рис. 5).

Впечатляет удобство получения документов OpenOffice.org из Ананаса. Стоит пользователю нажать кнопку «Печать» в экранной форме любого из электронных документов, перед ним тут же появляется окно OpenOffice.org с документом, готовым к выводу на печать, а если нужно, и редактированию или конвертации в другие форматы.

В заключение, для краткого перечисления возможностей бизнес-схемы «Оперативный учет», процитирую «Руководство пользователя» этой бизнес-схемы, которое содержит исчерпывающее описание всех ее возможностей.

Бизнес-схема «Оперативный учет» обеспечивает следующую функциональность:

  • Ведение ежедневно необходимого учета: покупка, продажа, платежи через банк, кассовые операции;
  • Получение управленческой информации: по товарным запасам в суммовом и количественном выражении;
  • Получение баланса по расчетам с партнерами;
  • Автоматический расчет остатков;
  • Генерация отчетов и печать документов;
  • Сервисные функции по резервному копированию и восстановлению данных.

Остается пожелать удачи всем, кто, прочитав статью, решил познакомиться с Ананасом самостоятельно. А для тех, кто решил не останавливаться на уровне пользователя и готов взяться за программирование, из которых вы узнаете кое-что о CRUD-приложениях, меню, регистрах и отчетах.

Личные инструменты
  • Купить электронную версию
  • Подписаться на бумажную версию