Ajout de styles sur les titres
authorAlicia FLOREZ <alicflorez@gmail.com>
Thu, 28 Mar 2013 15:41:26 +0000 (16:41 +0100)
committerAlicia FLOREZ <alicflorez@gmail.com>
Thu, 28 Mar 2013 15:41:26 +0000 (16:41 +0100)
ods.py
odsgen
oe.py

diff --git a/ods.py b/ods.py
index 1f07b0f..0ea4370 100644 (file)
--- a/ods.py
+++ b/ods.py
@@ -1,16 +1,17 @@
 #-*- coding: utf-8 -*-
 """
-Module contenant le code permettant de créer des feuilles ods contenant les tâches pour chaque contener.
+Module contenant le code permettant de créer des feuilles ods contenant
+les tâches pour chaque contener.
 """
 
 from odf.opendocument import OpenDocumentSpreadsheet
-from odf.style import Style, TextProperties, TableColumnProperties,\
-ParagraphProperties
+from odf.style import Style, TextProperties,\
+    TableColumnProperties, ParagraphProperties, GraphicProperties
 from odf.text import P
 from odf.table import Table, TableColumn, TableRow, TableCell
 
 
-def create_cell(text):
+def create_cell(text, style=None):
     """
     Permet de créer une cellule contenant le text.
 
@@ -18,25 +19,36 @@ def create_cell(text):
 
     Revoit une cellule TableCell
     """
-    tc = TableCell()
+    if style == None:
+        tc = TableCell()
+    else:
+        tc = TableCell(stylename=style)
     tc.addElement(P(text=text))
     return tc
 
 
 def create_doc(containers, container_tasks):
     """
-    Permet de créer un document ods comprenant une feuille pour chaque contener, avec la liste des tâches.
+    Permet de créer un document ods comprenant une feuille
+    pour chaque contener, avec la liste des tâches.
 
     containers : une liste de dictionnaires de containers
-    tasks : un dictionnaire qui assosie à chaque ID de container la liste des tâches qu'il contient
+    tasks : un dictionnaire qui assosie à chaque ID de container
+    la liste des tâches qu'il contient
     """
     document = OpenDocumentSpreadsheet()
     tablecontents = Style(name="Table Contents", family="paragraph")
-    tablecontents.addElement(ParagraphProperties(numberlines="false", linenumber="0"))
+    tablecontents.addElement(ParagraphProperties(numberlines="false",
+                                                 linenumber="0"))
     document.styles.addElement(tablecontents)
 
-    #container_keys = ['name','description']
-    task_keys = ['name', 'description', 'manday', 'priority', 'state', 'planned', 'milestone']
+    bbb= Style(name="bbb", family="table-cell")
+    bbb.addElement(TextProperties(fontweight="bold", fontsize="11", color="#1FA055"))
+    document.automaticstyles.addElement(bbb)
+
+    #container_keys = ["name", "description", "target", "milestone"]
+    task_keys = ['name', 'description', 'manday', 'priority', 'state',
+                 'planned', 'milestone']
 
     for c in containers:
         table = Table(name=c['name'])
@@ -46,19 +58,19 @@ def create_doc(containers, container_tasks):
 
         tr = TableRow()
         table.addElement(tr)
-        tr.addElement(create_cell("Name"))
+        tr.addElement(create_cell("Name", "bbb"))
         tr.addElement(create_cell(c["name"]))
         tr.addElement(create_cell(""))
-        tr.addElement(create_cell("Target"))
+        tr.addElement(create_cell("Target", "bbb"))
         tr.addElement(create_cell(c["target"]))
+        tr.addElement(create_cell(""))
+        tr.addElement(create_cell("Milestone", "bbb"))
+        tr.addElement(create_cell(c["milestone"]))
 
         tr = TableRow()
         table.addElement(tr)
-        tr.addElement(create_cell("Description"))
+        tr.addElement(create_cell("Description", "bbb"))
         tr.addElement(create_cell(c["description"]))
-        tr.addElement(create_cell(""))
-        tr.addElement(create_cell("Milestone"))
-        tr.addElement(create_cell(c["milestone"]))
 
         if not tasks:
             continue
@@ -69,16 +81,16 @@ def create_doc(containers, container_tasks):
         tr = TableRow()
         table.addElement(tr)
         for k in task_keys:
-            tc = TableCell()
-            tc.addElement(P(text=k))
+            tc = TableCell(stylename="bbb")
             tr.addElement(tc)
+            tc.addElement(P(text=k.capitalize()))
 
         for t in tasks:
             tr = TableRow()
             table.addElement(tr)
             for tk in task_keys:
                 tc = TableCell()
-                tc.addElement(P(text=t[tk]))
                 tr.addElement(tc)
+                tc.addElement(P(text=t[tk]))
 
-    document.save("Mes todolist.ods")
\ No newline at end of file
+    document.save("Mes_todolist.ods")
diff --git a/odsgen b/odsgen
index 5fe52bd..dc88f19 100644 (file)
--- a/odsgen
+++ b/odsgen
@@ -3,9 +3,8 @@
 
 #odf : 608
 import openerplib
-from oe import *
-from ods import *
-#from getpass import getpass
+from oe import get_containers, get_tasks
+from ods import create_doc
 
 
 def get_user_name(connection, user_login):
@@ -18,16 +17,11 @@ def get_user_name(connection, user_login):
 
 
 if __name__ == '__main__':
-#    login = raw_input('Utilisateur: ')
-#    password = getpass('Mot de passe: ')
-
     connection = openerplib.get_connection(
         hostname='localhost',
         database='testing',
-#        login = login,
-#        password = password
-        login = "admin",
-        password = "admin",
+        login="admin",
+        password="admin",
     )
 
     try:
@@ -35,14 +29,17 @@ if __name__ == '__main__':
     except:
         print('Serveur éteint ou Identifiants incorrects')
     else:
-        print('Test sur res.user : %s' % (get_user_name(connection, 'admin') == 'Administrator'))
+        print('Test sur res.user : %s' %
+              (get_user_name(connection, 'admin') == 'Administrator'))
         containers = get_containers(connection)
-        tasks = {c["id"]: get_tasks(connection, c["tasks"]) for c in containers}
+        tasks = {c["id"]: get_tasks(connection,
+                                    c["tasks"]) for c in containers}
 
-        #============================================================================
+        #======================================================================
         # _tasks = []
         # for c in containers:
         #    _tasks[c["id"]] = get_tasks(connection, c["tasks"])
-        #============================================================================
+        #======================================================================
 
-        create_doc(containers, tasks)
\ No newline at end of file
+        create_doc(containers, tasks)
+        #SplitAllSheets("Mes_todolist.ods")
diff --git a/oe.py b/oe.py
index 622bfca..f47aef8 100644 (file)
--- a/oe.py
+++ b/oe.py
@@ -1,7 +1,8 @@
 #-*- coding: utf-8 -*-
 
 """
-Module contenant le code permettant d'aller chercher les informations dans OpenERP.
+Module contenant le code permettant d'aller
+chercher les informations dans OpenERP.
 """