[grisbi-devel] Problème avec "extraire un num éro à enregistrer dans N° de chèque/Vi rement"

Ludovic Rousseau <[email protected]>
Newsgroups gmane.linux.grisbi.devel.french
Message-ID <CAGstE8BjdY8h9D-_g-S6nQJav6obg=VEKeDwee2ojV3kEJ6NZg@mail.gmail.com>
Bonjour,

J'ai un problème avec l'option d'importation "extraire un numéro à
enregistrer dans N° de chèque/Virement"

Le code cherche n'importe quel suite de caractères qui ressemble à un
nombre pour l'utiliser comme numéro de chèque.
Mon problème est que la banque ajoute une date sur les paiements par CB.
Par exemple :
$ ofxdump telechargement.ofx
[...]
ofx_proc_transaction():
    Account ID : 11315 00001 xxxxxxxxxx
    Transaction type: DEBIT: Generic debit
    Date posted: Wed Aug 15 11:59:00 2018 CEST
    Total money amount: -50.00
    # of units: 50.00
    Unit price: 1.00
    Financial institution's ID for this transaction: xxxxxxxxxx-17.13.57.177042
    Name of payee or transaction description: CB FRAMASOFT       FACT 140818
    Extra transaction information (memo): CB FRAMASOFT       FACT 140818
[...]

Donc ici Grisbi va prendre "140818" comme un numéro de chèque alors
que c'est une date.

Pour un chèque ça marche très bien.
Par exemple avec :
[...]
ofx_proc_transaction():
    Account ID : 11315 00001 xxxxxxxxxx
    Transaction type: DEBIT: Generic debit
    Date posted: Mon Aug  6 11:59:00 2018 CEST
    Total money amount: -571.37
    # of units: 571.37
    Unit price: 1.00
    Financial institution's ID for this transaction: xxxxxxxxxx-02.03.45.399201
    Name of payee or transaction description: CHEQUE N 8786734
    Extra transaction information (memo): CHEQUE N 8786734
[...]

Ici "8786734" est bien un numéro de chèque.

Ma proposition : est-ce une bonne idée d'ajouter un critère
supplémentaire avant de prendre un nombre pour un numéro de chèque ?
Par exemple il faut que la transaction contienne "CHEQUE".

ça fonctionnerait pour mon cas. Mais je suis peut-être une exception ?
Le patch est très simple :
diff --git a/src/import.c b/src/import.c
index b41f84f9c..3e493cea1 100644
--- a/src/import.c
+++ b/src/import.c
@@ -2313,7 +2313,7 @@ static gint gsb_import_create_transaction
(struct ImportTransaction *imported_tr
                 gsb_data_transaction_set_notes (transaction_number,
                         imported_transaction->tiers);
         }
-        if (etat.extract_number_for_check)
+        if (etat.extract_number_for_check &&
strstr(imported_transaction->tiers, "CHEQUE"))
         {
             tmp_str = gsb_string_extract_int (imported_transaction->tiers);
             if (tmp_str && strlen (tmp_str) > 0)

On peut rendre le texte à chercher paramétrable.

Des commentaires ?

à+

-- 
 Dr. Ludovic Rousseau
_______________________________________________
devel mailing list
[email protected]
http://listes.grisbi.org/mailman/listinfo/devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.