Problème de génération PDF de factures
#1
Bonjour,

Je m'insinue dans cette discussion. Je suis à la recherche d'information pour éditer les factures en pdf.
En fait j'ai installé une version d'essai sur serveur apache, qui nous semble très intéressante. Je teste les différentes fonctionnalités, dont la possibilité de créer des factures en pdf. Mais j'obtiens une erreur 500 et dans le log d'erreur
Code :
[Tue May 14 09:51:44 2013] [error] Internal Server Error: /billing/generate_pdf/368
[Tue May 14 09:51:44 2013] [error] Traceback (most recent call last):
[Tue May 14 09:51:44 2013] [error]   File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 111, in get_response
[Tue May 14 09:51:44 2013] [error]     response = callback(request, *callback_args, **callback_kwargs)
[Tue May 14 09:51:44 2013] [error]   File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/decorators.py", line 23, in _wrapped_view
[Tue May 14 09:51:44 2013] [error]     return view_func(request, *args, **kwargs)
[Tue May 14 09:51:44 2013] [error]   File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/decorators.py", line 23, in _wrapped_view
[Tue May 14 09:51:44 2013] [error]     return view_func(request, *args, **kwargs)
[Tue May 14 09:51:44 2013] [error]   File "/srv/d_ixeo/www/creme.xxx-conseil.fr/creme_crm-1.2/creme/billing/views/export.py", line 43, in export_as_pdf
[Tue May 14 09:51:44 2013] [error]     source = entity.get_source().get_real_entity()
[Tue May 14 09:51:44 2013] [error] AttributeError: 'NoneType' object has no attribute 'get_real_entity'
[Tue May 14 09:51:48 2013] [error] CremeEntity.get_credentials(): Cache MISS for id=371 user=Sam
[Tue May 14 09:51:48 2013] [error] Inner_popup for: /creme_core/relation/add/371
[Tue May 14 09:51:55 2013] [error] Inner_popup for: /creme_core/lv_popup/110/1

Donc j'essaie de comprendre et je tombe sur ce fil... Le problème est que j'ai bien trouvé le fichier export.py... mais que là je butte...

Merci

René
  Répondre
#2
En effet votre question aurait pu figurer dans un autre thread sans problème, puisque là il était décrire sa propre fonction d'exportation PDF, alors que vous avez l'air d'utiliser un Creme non modifié.

Tant pis je vais répondre ici, ce n'est pas grave. Pour une raison, que j'ignore votre document comptable semble ne pas avoir de Société émettrice, ce qui m'amène à 2 réflexions :
- comment avez vous réussi à ne pas avoir de Société source ? En effet, elle est obligatoire à la création du document comptable et ne devrait pas pouvoir être supprimée si elle est reliée. Il y a donc peut être un bug, à moins que vous ayez modifié la base à la main.
- mettez une Société émettrice via le formulaire d'édition (le gros stylo dans la vue en détail du document) et cela devrait fonctionner.
  Répondre
#3
Bonjour,

Merci pour votre réponse. Désolé pour le mauvais fil... je suis prêt à déplacer mes questions... peut-être un administrateur du forum peut-il le faire ?
En fait je suis en train de faire des essais, pour migrer depuis Vtiger. J'ai donc récupéré via phpMyAdmin le contenu des différentes tables de Vtiger (sociétés, contact, factures, devis...) et je les importe via l'outil "importer un csv" en mode liste. Je l'ai fait pour les organisations, contacts, factures, etc.
Effectivement, je n'ai pas trouvé via cette importation le moyen de récupérer l'information sur la société émettrice ni d'ailleurs sur la société destinataire... ni sur le montant, ces items n'étant pas proposés dans l'import.
D'où l'absence de ces items dans ma liste... on les corrige à la main (heureusement, on a commencé en début d'année donc il n'y en a pas trop).
En revanche, je viens de reessayer sur une société "corrigée" qui a bien toutes les informations, et j'ai le même résultat, "erreur 500"
Dans le dossier upload/billing, j'ai trouvé des fichiers log latex. Et là j'ai trouvé ce message d'erreur
Code :
! LaTeX Error: File `units.sty' not found.

Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: sty)

Enter file name:
! Emergency stop.
<read *>
        
l.11 \usepackage
                {bera}^^M
End of file on the terminal!

Apparemment il manque un ficher units.sty... mais je ne sais pas ni où le trouver (probablement un module de texfile) ni où l'installer...
Merci

René
  Répondre
#4
Re Bonjour,
Je progresse, j'ai trouvé à installer les paquets units, bera et multirow sur mon install de latex.
En revanche, je tombe sur une erreur de compilation latex qui me semble moins évidente. Un problème d'overflow...
Citation :LaTeX Font Info: External font `cmex10' loaded for size
(Font) <10.95> on input line 91.
LaTeX Font Info: External font `cmex10' loaded for size
(Font) <8> on input line 91.
LaTeX Font Info: External font `cmex10' loaded for size
(Font) <6> on input line 91.
LaTeX Font Info: Font shape `T1/fve/m/n' will be
(Font) scaled to size 12.9599pt on input line 92.
LaTeX Font Info: Font shape `T1/fve/b/n' will be
(Font) scaled to size 12.9599pt on input line 92.
LaTeX Font Info: Font shape `T1/fve/m/n' will be
(Font) scaled to size 22.39185pt on input line 92.
LaTeX Font Info: Font shape `T1/fve/b/n' will be
(Font) scaled to size 22.39185pt on input line 92.

Overfull \hbox (18.0pt too wide) in paragraph at lines 91--97
[][]
[]


Overfull \vbox (1.59998pt too high) detected at line 101
[]

LaTeX Font Info: Font shape `T1/fve/b/n' will be
(Font) scaled to size 9.85492pt on input line 101.
! Missing } inserted.

}
l.101 ...ceHeader{\Number}} & \textbf{\TargetName}
\\
?
! Emergency stop.

}
l.101 ...ceHeader{\Number}} & \textbf{\TargetName}
\\
End of file on the terminal!

Un problème dans le template Facture.tex ?

Merci

René
  Répondre
#5
Jean-Michel vous mailera ce soir pour les problèmes liés à la compilation Latex.

Vous avez toujours des erreurs, mais on progresse depuis l'erreur 500 du début. En effet je n'avais pas pensé à l'importation CSV. Elle est faite de manière générique pour tous les types d'entités (fiches), mais dans la pratique il faut ajuster certains détails selon les différents types. Pour les Sociétés, Contacts et Tickets cela marche bien ; dans la version 1.3 à venir ce travail a bien été fait sur les Opportunités d'affaires. En revanche le résultat sur les documents comptables est perfectible.

Peut-être faudrait-il désactiver la fonction d'importation sur les types pour lesquels le résultats n'est pas parfait ? D'un autre côté vous avez pu importer en partie vos données... Il est sûr que l'importation de factures est complexe, ne serait-ce qu'à cause des lignes de factures. Il faudrait peut être juste gérer correctement les Sociétés émettrices et réceptrices dans un premier temps.

Lorsqu'on doit importer des données un peu trop complexes (il arrive très souvent que les données de nos clients viennent de fichiers excel pas très rigoureux) , on code une moulinette d'import. Il y a un squelette de commande d'importation (et un exemple d'utilisation) dans les sources : creme/creme_core/management/base.py
Mais même si cela reste assez simple cela nécessite évidemment de coder.
  Répondre
#6
Merci pour votre réponse.
En fait, vu le faible nombre de fiches que nous avons, la finalisation "à la main" s'avère plus simple et plus rentable...
J'ai réussi à avoir un document pdf à partir d'une autre facture. Le problème est donc sans doute spécifique à une facture...
Il me reste à apprendre à coder et à utiliser latex pour mettre les factures au goût de mes collègues...

René
  Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 3 visiteur(s)