Projet

Général

Profil

Bug #2732

vue télétransmission

Ajouté par Thomas Noël il y a environ 11 ans. Mis à jour il y a plus de 10 ans.

Statut:
Fermé
Priorité:
Immediat
Assigné à:
Version cible:
-
Début:
11 avril 2013
Echéance:
% réalisé:

100%

Temps estimé:
Patch proposed:
Planning:

Description

Faire une vue qui permet d'afficher les télétranmissions à faire / faites.

appel en GET :
  • ?sediq=nnn => construit les fichiers B2 pour la facturation nnn s'ils n'existent pas
  • ?seqid=nnn&force => force la construction précédente (en cas de bogue...)
    les fichiers seront alors dans /var/lib/calebasse/B2/nnn/

ensuite, la vue affiche pour chaque facturation la liste des fichiers B2 à envoyer ("pour caisse XXX, lot XXX du dd/mm/yyyy, total xxx€"), avec pour chaque fichier un lien vers une action pour l'envoyer OU un message "envoyé le dd/mm/yyyy".


Fichiers

Révisions associées

Révision d6340428 (diff)
Ajouté par Thomas Noël il y a presque 11 ans

b2: add tranmission views (fix #2732)

+ NOEMIE basic views (#2731)

Historique

#1

Mis à jour par Mikaël Ates il y a presque 11 ans

  • Priorité changé de Normal à Immediat

Lorsqu'aucune tt n'a encore été faite pour une facturation, il faut afficher un unique bouton "Télétransmettre". N'afficher des boutons de tt caisse par caisse que s'il y a déja une tt partielle pour une facturation.

#2

Mis à jour par Mikaël Ates il y a presque 11 ans

  • Projet changé de APS42 à Calebasse
  • Version cible 0.6 supprimé
#3

Mis à jour par Thomas Noël il y a presque 11 ans

Patch qui fonctionne.

Quand un facture est validée, le bouton "Télétransmission" apparait, à côté de l'impression et de l'export compta.

Quand on clique sur ce bouton, on arrive sur une page qui propose, si ça n'a pas encore été fait, de "Préparer les fichiers pour la télétransmission". On clique sur le bouton proposé et les fichiers B2 sont crées. La page se réaffiche.

Quand les fichiers B2 sont créée, la page affiche le détail de chaque fichier : à quelle caisse va-t-il être envoyé, quels lots contient-il (avec les montants, nombre d'actes, nombre de factures). Cela permet un dernier check.

On cliquer alors sur le bouton "Envoyer" en haut à droite. L'envoi se déroule... ça peut être long sur un Exchange, trop long (ça sera à améliorer, sans doute avec du celery ou un truc dans le genre, mais là, pas le temps ni la possibilité de le faire).

Si pas de timeout, la page se réaffiche. Pour chaque fichier B2 on voit s'il a pu être envoyé ou pas. On voit le log de l'envoie SMTP (case en "HTML pre" assez technique, mais il contient les dates exacts et les message d'erreur le cas échéant).

S'il a pu être envoyé, un message "Envoyé le..." s'affiche en vert. On peut éventuellement cliquer sur un lien "Envoyer à nouveau" pour forcer le renvoi de ce fichier B2 (au cas où il se perd entre temps...).

Sinon, le log s'affiche en rouge. On clique à nouveau sur "Envoyer" pour relancer l'envoi de tous les échecs.

Reste à faire :
  • facile : un bouton "Retenter" quand un envoi a planté
  • chiant : un envoi en background parce que Exchange demande presque d'attendre 10 secondes entre deux envois, pffff... une autre solution serait de passer via le SMTP local mais en cas de pépin on ne verra pas ce qui coince et il faudra dépanner la queue... pas marrant (alors que là, c'est notre fournisseur de mail qui se tape le boulot).
Note :
  • rien en base, tout est sur le disque dans /var/lib/calebasse/B2/<nnn>/ où <nnn> est le seq_id de la facture.
#4

Mis à jour par Mikaël Ates il y a presque 11 ans

  • Statut changé de Nouveau à En cours

yep, au passage :
$ git am --signoff < calebasse-teletransmission-views.patch
Patch does not have a valid e-mail address.
Mais de toute façon je te laisserais committer directement et déployer en prod :)

Pour les gens comme moi qui ont un openssl sans le support sslv2, m2crypto gueule :
http://stackoverflow.com/questions/8206546/undefined-symbol-sslv2-method
Patcher m2crypto comme indiqué ici :
http://blog.schmichael.com/2012/05/29/building-python-2-6-8-on-ubuntu-12-04/

Pour le dictionnaire de config, en effet un exemple en commentaire dans les settings ce serait bien. A voir, mais je préférerais qu'il n'y ait pas de valeurs par défaut et que l'on teste les params à None pour afficher une page 'Télétransmission B2 non configurée'. Plus un test sur l'existence du 'output_directory'. Ces tests seraient notamment effectués lors de l'appel de la page télétransmission.

L'affichage des erreurs d'envoi en gris sur rouge n'est pas lisible chez moi, on pourrait mettre le texte en blanc ?

Pour le reste je n'ai pas testé.

Détail, il y a des blank lines en fin de calebasse/facturation/views.py et calebasse/facturation/templates/facturation/transmission.html

#5

Mis à jour par Thomas Noël il y a presque 11 ans

Nouvelle version du patch qui intègre les demandes ci-dessus.

#6

Mis à jour par Thomas Noël il y a presque 11 ans

  • Statut changé de En cours à Résolu (à déployer)
  • % réalisé changé de 0 à 100

Appliqué par commit aps42:calebasse|commit:d6340428356018fad9ee26fdb4a46f020bb169a9.

#7

Mis à jour par Thomas Noël il y a presque 11 ans

Appliqué par commit calebasse|commit:d6340428356018fad9ee26fdb4a46f020bb169a9.

#8

Mis à jour par Mikaël Ates il y a plus de 10 ans

  • Statut changé de Résolu (à déployer) à Fermé

Formats disponibles : Atom PDF