Contents
Instalación cliente Tryton
Paquetes
En la web oficial se ofrece el código fuente del cliente GTK como el ejecutable para Windows (exe) y MacOS (dmg).
Consulte el listado de descarga y seleccione la versión correspondiente a su servidor de Tryton.
Los paquetes a seleccionar/descargar son:
tryton-2.x.x.tar.gz Código fuente y para Linux
tryton-2.x.x.dmg Paquete para MacOS
tryton-2.x.x.exe Paquete para Windows
Técnico
Con la instalación de Tryton con Invoke ya dispondremos del cliente para instalar. Lo podemos instalar como librería Python.
El ejecutable se encuentra en la ruta:
/usr/local/bin/tryton
Para ejecutar el cliente en modo desarrollo (no caché):
/usr/local/bin/tryton -d
Compilar locales
python ./setup.py compile_catalog --locale ca_ES
Paquetes
- python-pygoocanvas: apt-get install python-pygoocanvas
GooCalendar: pip install GooCalendar
Ficheros configuración cliente
El cliente de Tryton guarda información en estos ficheros:
- tryton.conf: Parámetros de configuración generales (los que se configuran desde el menú superior "Opciones" del cliente).
- profiles.cfg: Perfiles de conexión a distintos servidores
en estas rutas:
- Windows (depende de la versión):
C:\Document and Setting\<username>\Application Data\.config\tryton\<version>
C:\Usuarios\<username>\AppData\Roaming\.config\tryton\<version>
Linux: /home/<username>/.config/tryton/<version>
Configurar envío correos electrónicos mediante programas auxiliares
En el cliente de Tryton hay que configurar dentro de Opciones/Correo electrónico.../Línea de comandos como ejecutar el programa externo de correo electrónico:
Thunderbird en Linux: thunderbird -compose "to='${to}',cc='${cc}',subject='${subject}',body='${body}',attachment='file://${attachment}'"
Thunderbird en Windows XP SP3 (la ruta del programa thunderbird.exe puede variar): "C:\\Program Files\\Mozilla Thunderbird\\thunderbird.exe" -compose to="${to}",cc="${cc}",subject="${subject}",body="${body}",attachment="${attachment}"
Outlook: outlook.exe /a "${attachment}" /m "${to}&cc=${cc}&subject=${subject}&body=${body}"
Configurar cada informe desde Administración/Interfaz del usuario/Acciones/Informes, dentro del campo "Correo electrónico", un diccionario Python con los valores que debe tener el correo. Por ejemplo en una venta
{'to': Eval('party_email'), 'cc': 'email@example.com', 'subject': If(Eval('state').in_(['draft']), 'Presupuesto', Eval('reference'))}
aunque seguramente haya que definir el campo funcional party_email.
Más información en:
SSL
Por defecto el cliente ya reconoce un servidor SSL y no es necesario hacer nada para la conexión SSL.
En el caso que anteriormente el servidor no tubiera SSL y se ha añadido ahora las connexiones con SSL, NO se podrá realizar la conexión por que intentará hacerlo sin SSL. El mensaje de error es: BadStatusLine: ''
Lo que haremos es editar el fichero ~/.config/tryton/x.y/known_hosts y borraremos la entrada del servidor. Reiniciaremos el cliente, y crearemos el perfil o la conexión. Esto nos creará un nuevo host en el fichero hosts con el SSL que se usa.
Debug
Temps resposta al client
$ pip install profilehooks
/tryton/jsonrpc.py
+import time +from profilehooks import timecall +def timeit(method): + def timed(*args, **kw): + ts = time.time() + result = method(*args, **kw) + te = time.time() + print te-ts + #~ print '%r (%r, %r) %r' % \ + #~ (method.__name__, args, kw, te-ts) + return result + return timed + class ResponseError(xmlrpclib.ResponseError): pass @@ -152,6 +165,11 @@ return host, extra_headers, x509 def send_content(self, connection, request_body): + try: + d = eval(request_body) + print d.get('method') + except: + pass connection.putheader("Content-Type", "text/json") if (self.encode_threshold is not None and self.encode_threshold < len(request_body) and @@ -168,6 +186,7 @@ if request_body: connection.send(request_body) + @timeit def make_connection(self, host): if self._connection and host == self._connection[0]: return self._connection[1]