This article covers installation process for Aeroo reporting engine on Linux servers. If you find this article useful or want to add some information related to this topic, please feel free to express your opinion on Aeroo Reports & OpenOffice.org Reporting Engine dedicated forum.

Development project pages are located on Launchpad.

  • For Aeroo Reports - OpenERP modules:

https://launchpad.net/aeroo

  • For Aeroo Reports Library - Python module:

https://launchpad.net/aeroolib

Environment dependencies

1.Open ERP server v. 6.x

2.OS: any Linux 32bit or 64bit. (tested on Ubuntu 10.04 server and Centos5.6 64bit)

Note: Clients can work on all OS systems that support OpenERP.

Note: This module is tested on Windows, and works on this operating system as well with custom compiled OpenERP server. Installation manual yet to be written.

Download: Sources available from launchpad via Bazaar.

Source online: https://launchpad.net/aeroo

Download: Packaged module available from https://launchpad.net/aeroo/+download

How to get module

1.Download Aeroo module through launchpad via Bazaar ( A distributed revision control system ).

# cd /usr/src
# bzr branch https://launchpad.net/aeroo
# bzr branch https://launchpad.net/aeroolib

Installation (Dependencies and Base system setup)

System Requirements:

  1. Python 2.4.x or higher (http://www.python.org/doc/)
  2. Aeroolib (bzr branch lp:aeroolib)
  3. Genshi (http://genshi.edgewall.org/)
  4. OpenOffice Python
  5. OpenOffice.org-pyuno
  6. python-lxml

Note: Server does not require “x” windows to be running, in order to run this module.

System Dependencies:

Names of dependencies may differ regarding your Linux distribution.

  1. Aeroolib: A templating library able to output odt files
  2. python-genshi: Toolkit for stream-based generation of output for the web
  3. pycairo: Python bindings for the cairo library
  4. python-openoffice: Python libraries for interacting with OpenOffice.org
  5. openoffice.org-pyuno : Python bindings for OpenOffice.org
  6. OpenOffice.org v.2.3.x or above.
  7. python-lxml - pythonic binding for the libxml2 and libxslt libraries

Aeroo Reports Installation

1.Install Aeroo Reports Library - Python module:

# bzr branch lp:aeroolib
# cd aeroolib/
# sudo python ./setup.py install

2.Restart openerp-server

3.Install Aeroo - OpenERP module via Administration-> Modules Management

a)Manually: Copy Aeroo modules to $serverpath/openerp-server/addons/..

b)Through OpenERP interface: Administration/Modules/Update Modules List

c)Install necessary modules via OpenERP standard module installation interface:

  • OpenERP module - report_aeroo

Description of module: This is base Aeroo Report Engine module. It can be installed alone and does only basic .odt/.ods output for reports. No need for OpenOffice/LibreOffice UNO environment setup if you use this module only.

  • OpenERP module - report_aeroo_ooo

(Do not install at this point! Installation is described in section report_aeroo_ooo installation)

Description of module: This is module for adding additional reports outputs such as .pdf, .doc, .xls. As it depends on OpenOffice/LibreOffice conversion capabilities, an OpenOffice/LibreOffice UNO environment setup is necessary.

  • OpenERP module - report_aeroo_printscreen

Description of module: This is module for printing any GTK client interface object to desired output. Note: It doesn't work from web client, cause it has no Print Screen capabilities.

  • OpenERP module - report_aeroo_sample

Description of module: This is module for adding sample reports for easier understanding basic reporting templates.

4.Restart OpenERP server.

If everything went well, system is ready for reports printing basic .odt reports.

OpenERP module - report_aeroo_ooo - module installation.

This module depends on correct OpenOffice/LibreOffice UNO runtime setup on installation server machine and local or remote running OpenOffice/LibreOffice service in headless mode, if you plan to do conversion via TCP/IP network on dedicated reporting server.

OpenOffice/LibreOffice UNO environment setup.

Setup an OpenOffice/LibreOffice UNO environment, it is done by simply installing of OpenOffice and python-openoffice packages.

Note: These dependencies are required only for support of additional report output formats like PDF:

  • openoffice.org-base
  • openoffice.org-calc (required)
  • openoffice.org-core (required)
  • openoffice.org-draw
  • openoffice.org-graphicfilter
  • openoffice.org-headless (required)
  • openoffice.org-impress
  • openoffice.org-sdk
  • openoffice.org-testtools
  • openoffice.org-ure
  • openoffice.org-writer (required)

Note: To avoid problems of dependencies we recommend to installation full OpenOffice/LibreOffice meta package on both- target system and remote system if necessary.

Note: Headless OpenOffice below version 3.x. requires package – OpenOffice Headless. Package permits OpenOffice to launch in service mode. If you have OpenOffice 3.x or above, then you don't need to install this package, because in versions 3.x or above OpenOffice Headless is already implemented.

If you get an error message like this:

/usr/lib64/openoffice.org/program/soffice.bin X11 error: Can't open display:
Set DISPLAY environment variable, use -display option
or check permissions of your X-Server
(See "man X" resp. "man xhost" for details)

...when starting OpenOffice in shell with "-headless" switch - it means that package openoffice-headless is not installed.

Testing OpenOffice headless mode.

To test if OpenOffice is correctly set up, go to OpenOffice installation directory and launch it in headless mode.

# ./soffice -nologo -nofirststartwizard -headless -norestore -invisible "-accept=socket,host=localhost,port=8100,tcpNoDelay=1;urp;" &
Then test with telnet:
# telnet localhost 8100

If you get something like this:

Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
`ø'com.sun.star.bridge.XProtocolPropertiesUrpProtocolPropertiesÜZĪŨkÎ@ëÚøBE^[[?6c

...then OpenOffice is up and listening to port 8100.

Note: In order to use uno module included in OpenOffice, your OpenOffice distribution must be compiled for the same version of python than you use for Open ERP server!

Installing and configuring report_aeroo_ooo module

Install report_aeroo_ooo module via OpenERP standard module installation interface.

Restart OpenERP server.

Note: Make sure you made correct UNO environment setup, if you get an error - “importError: No module named pyuno, when installing report_aeroo_ooo module or restarting server.

Configure connection parameters to OpenOffice.org service

Administration->Customization->Aeroo Reports->Configure OpenOffice.org connection

  1. Open wizard;
  2. Fill in your custom values;
  3. Save;

On success you should receive message:"Connection to the OpenOffice.org instance was successfully established and PDF convertion is working."

If it fails with error :

Connection to OpenOffice.org instance was not established or convertion to PDF unsuccessful!

It was unable to connect to OpenOffice.org or OpenOffice.org was unable to perform PDF conversion.

Your setup of Aeroo Reporting in OpenERP is complete.

Aeroo Reports Linux server的更多相关文章

  1. 在Azure上实现Linux Server故障转移

    要充分利用公有云的弹性扩展和高可用, 首先要在应用系统层面支持横向扩展(scale out),这个说起来很容易,或者说对新开发的应用系统而言已经成为标配.但是对已有的.老旧的应用系统来说,这就比较困难 ...

  2. HowTo: Linux Server Change OR Setup The Timezone

    Method 1 #tzselect # select timezone e.g. Asia/Shanghai#echo 'Asia/Shanghai' > /etc/timezone # se ...

  3. 在Oracle Linux Server release 6.4下配置ocfs2文件系统

    ① 安装ocfs-tools-1.8 如果是使用RedHat Enterprise Linux 6.4,也可以安装ocfs-tools-1.8的,只是要插入Oracle Linux Server re ...

  4. Linux Server

    Linux Server CentOS 6.3下配置iSCSI网络存储 摘要: 一.简介iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运 ...

  5. ORACLE Install (10g r2) FOR Red Hat Enterprise Linux Server release 5.5 (64 bit) (转)

    OS Info----------# cat /etc/redhat-releaseRed Hat Enterprise Linux Server release 5.5 (Tikanga)# cat ...

  6. Red Hat Enterprise Linux Server(RHEL) yum安装软件时This system is not registered with RHN. RHN support will be disabled. 的解决方法(转)

    新安装了redhat6.5.安装后,登录系统,使用yum update 更新系统.提示: This system is not registered to Red Hat Subscription M ...

  7. Linux server关闭自己主动

    公司linux server发生错误.mysql server没有理由关闭,我找不到理由.Version: '5.6.13-enterprise-commercial-advanced' socket ...

  8. Install KVM Hypervisor on arrch64 Linux Server

    Install KVM Hypervisor on arrch64 Linux Server 参考链接: https://wiki.ubuntu.com/ARM64/QEMU https://wiki ...

  9. zzw原创_Red Hat Enterprise Linux Server release 6.5 安装mysql5.5.28版本

    1.查看系统版本 [root@ip12189 ~]#  more /etc/issueRed Hat Enterprise Linux Server release 6.5 (Santiago)Ker ...

随机推荐

  1. Ajax使用进阶

    关于Ajax的概念不再做解释了,我想通过三个小例子来让大家对Ajax有个清晰的认识.要学习它,必须从最基础最原始的方式开始认识,然后通过使用框架来提升效率,逐步认识它. 一.原生js版(注册的用户名是 ...

  2. 编译 Windows 版本的 Unity Mono(2017-03-12 20:59)

    上一篇说了如何编译 Android 下的 mono,这里简要说下编译 windows 版本的 mono,就是 mono.dll,Unity 版本只有一个 mono.dll,官方的 mono,好几个可执 ...

  3. #、##和__VA_ARGS__

    转自:http://www.cnblogs.com/zhujudah/admin/EditPosts.aspx?opt=1 1.#假如希望在字符串中包含宏参数,ANSI C允许这样作,在类函数宏的替换 ...

  4. python3实践-从网站获取数据(Carbon Market Data-BJ) (pandas,bs4)

    自己边看边实践一些简单的实际应用,下面的程序是从某个网站上获取需要的数据. 在编写的过程中,通过学习陆续了解到一些方法,发现Python真的是很便捷. 尤其是用pandas获取网页中的表格数据,真的是 ...

  5. Flask实战第67天:Flask+Celery实现邮件和短信异步发送

    之前在项目中我们发送邮件和 短信都是阻塞的,现在我们来利用Celery来优化它们 官方使用文档: http://flask.pocoo.org/docs/1.0/patterns/celery/ re ...

  6. poj 1068(模拟题)

    Parencodings Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 23545   Accepted: 13802 De ...

  7. .NET分层登陆——机房收费系统再总结

    去年的时候,我写过一篇机房收费系统登陆的总结文章,那是站在VB的基础上,直接查询数据库实现的登陆.是很初期的知识.如果想了解详情,请看VB查询数据库之登陆窗体--机房收费系统总结(一). 今天,我要换 ...

  8. Codeforces Round #448(Div.2) Editorial ABC

    被B的0的情况从头卡到尾.导致没看C,心情炸裂又掉分了. A. Pizza Separation time limit per test 1 second memory limit per test ...

  9. [BZOJ3131] [Sdoi2013]淘金

    [BZOJ3131] [Sdoi2013]淘金 Description 小Z在玩一个叫做<淘金者>的游戏.游戏的世界是一个二维坐标.X轴.Y轴坐标范围均为1..N.初始的时候,所有的整数坐 ...

  10. Codeforces 804E The same permutation(构造)

    [题目链接] http://codeforces.com/contest/804/problem/E [题目大意] 给出一个1到n的排列,问每两个位置都进行一次交换最终排列不变是否可能, 如果可能输出 ...