Export des comptes (pas des bases) en xls ou csv ou

Bonjour à tous,

je découvre depuis peu Kresus (installé sur un YNH) en vue d’une gestion de LMNP et de SCI familliale… je voudrais savoir s’il est possible d’exporter les comptes sous un format X ou Y… car c’est mon principal besoin actuellement:

  • importer les comptes (ça, évidemment, c’est ok)
  • les catégoriser, rajouter les opérations qui ne passent pas par les comptes (ça aussi, c’est ok)
  • renvoyer cela à l’expert comptable (sous fichier xls ou autre)

merci de vos lumières (:

Krr

Salut !

Bienvenu sur le forum !

Alors non, ça n’existe pas en l’état actuel ; ça pourrait faire l’objet d’une contribution, si tu es ou quelqu’un est motivé :slight_smile:

Sinon, on a déjà une fonction d’export (qui permet de migrer son instance de Kresus, entre autres, et faire des « backups » simplement). Tu pourrais utiliser cet export, qui renvoie un fichier JSON, pour ensuite le convertir ; le format est relativement simple, donc ça doit bien se faire :+1:

Bon courage !
Benji

Hello… bon j’avais bien fait le tour. Le seul moyen consiste (sur un ipad uniquement, sur un ordi ca ne marche pas… j’ai aucune idée pourquoi) à sélectionner et faire un copier/coller spécial et qq manips ensuite.

Mais un simple export CSV serait vraiment génial… hélas, je n’ai aucune connaissance sur le sujet dev/code …

Serait il possible aussi, dans les demandes, de pouvoir avoir une colonne de plus (avec un simple champ texte) ? Afin de pouvoir noter les numéros de facture ou autre… (y’a tjrs moyen de rentrer dans les catégories mais c’est pas pratique)

et où pourrais je poster ces demandes ? (export et colonne en plus)

Salut !

Alors le forum est un endroit très bien pour demander une fonctionnalité comme tu l’as fait, merci à toi !

Pour ce qui est de l’export en CSV, plusieurs points me viennent à l’esprit :

  • si quelqu’un se sent de faire un petit script pour convertir du format de JSON vers CSV, faites-vous plaisir :slight_smile:
  • peut-être qu’un usage basé sur Woob serait suffisant pour toi ? Je pense que woob permet d’exporter vers des formats standards, donc j’imagine un format notamment CSV.
  • dans le doute, j’ouvre un ticket pour le faire côté Kresus, parce qu’un export d’un compte au format CSV ne devrait pas être très dur (ou de tous les comptes).

Pour ce qui est du champ texte : tu peux cliquer sur le nom d’une transaction pour personnaliser le libellé et ajouter des petites notes à l’intérieur, est-ce que c’est suffisant pour toi ?

À plus !

Hello désolé du super long délai de réponse… j’étais en arret maladie et donc un peu coupé des machines.

  • woob: peut etre que ca ferait le boulot ? j’ai du mal à saisir ce que ça fait ?
  • export en csv: oui ce sera très suffisant, puisqu’à partir de là, il suffit de savoir les caractères utilisées pour délimiter et on ressort un excel en deux clics…
  • non, en fait le libellé étant celui « de la banque », c’est un truc à conserver en l’état si possible… non vraiment simplement le fait de pouvoir rajouter une colonne « notes » (ou un autre titre) dans lequel on peut rentrer autre chose… ici, ce serait pour faire correspondre à des éléments comptables (le numéro d’une facture par exemple…). Evidemment, colonne qui serait également exportée via le CSV (-:

merci pour ton temps et tes réponses en tout cas !

Salut !

Concernant l’export en CSV, en attendant un éventuel développement, cette commande te fera un export CSV : curl -L http://127.0.0.1:9876/api/all | jq ".transactions[] | [.id, .accountId, .label, .rawLabel, .customLabel, .date, .amount, .category, .type] | @csv" > fichier.csv.

Ça nécessite curl et jq et se lance directement sur l’URL du Kresus (ici 127.0.0.1:9876).

Concernant les libellés, le label récupéré reste toujours disponible dans le champ rawLabel, le champ customLabel ne l’écrase pas. Dans l’interface le custom label est utilisé en priorité mais le label brut reste visible dans les détails de l’opération.
Et rien ne t’empêche de mettre en label personnalisé le label brut + la note que tu veux rajouter (en les séparant par un / ou autre pour t’y retrouver).

Hello… je te remercie pour la commande… je vais voir de tester cela.

Je suppose qu’il faut que je sois loggé quand meme pour que cela fonctionne ? Si je lance cela dans un terminal… comment la machine sait elle que je suis loggé via mon browser ?

La commande est à lancer sur le serveur qui fait tourner Kresus, ça appelle directement Kresus (qui n’a pas de système d’authentification, en laissant la charge à un reverse proxy ou truc style).

chez moi, c’est sur un YuNoHost…

bon, je vais voir comment je peux tester cela quand je rentre (je ne suis pas sur place…)… et je te dis dès que j’ai testé ! (:

J’ai donc tenté la commande dans un terminal directement sur la machine… et ca me met:
curl: (7) Failed to connect to 127.0.0.1 port 9876: Connection refused

Evidemment, j’étais en root…

Que donne comme retour la commande netstat -plnt ?
Le port a peut-être été changé…

je ne vois aucun nom dans la liste de netstat qui correspondrait à kresus… ca devrait etre quel nom de pgm qui utiliserait le port qu’on cherche ? actuellement le port 9876 n’est pas utilisé, en tout cas.

Le programme serait sûrement node, avec l’utilisateur kresus.
Sinon tu dois pouvoir retrouver le port avec un truc du style de grep "port=" /var/www/kresus/config.ini"

nope, y’a aucun node avec utilisateur kresus…

peut etre y’a t’il un truc à faire dans l’administration de kresus ? Il est installé via YUNOHOST…

Sans la liste ni le retour de la commande précédente ça va être difficile de t’aider…

grep ne donne aucun retour, juste un >

et la liste:

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:636             0.0.0.0:*               LISTEN      2288/slapd          
tcp        0      0 0.0.0.0:4190            0.0.0.0:*               LISTEN      2369/dovecot        
tcp        0      0 0.0.0.0:4000            0.0.0.0:*               LISTEN      4734/nxd            
tcp        0      0 127.0.0.1:20000         0.0.0.0:*               LISTEN      4282/nxserver.bin   
tcp        0      0 127.0.0.1:12001         0.0.0.0:*               LISTEN      4332/nxnode.bin     
tcp        0      0 0.0.0.0:993             0.0.0.0:*               LISTEN      2369/dovecot        
tcp        0      0 0.0.0.0:44321           0.0.0.0:*               LISTEN      2436/pmcd           
tcp        0      0 0.0.0.0:44322           0.0.0.0:*               LISTEN      2471/pmproxy        
tcp        0      0 127.0.0.1:6787          0.0.0.0:*               LISTEN      553028/python3      
tcp        0      0 0.0.0.0:44323           0.0.0.0:*               LISTEN      2471/pmproxy        
tcp        0      0 127.0.0.1:11332         0.0.0.0:*               LISTEN      2119/rspamd: main p 
tcp        0      0 127.0.0.1:35140         0.0.0.0:*               LISTEN      1192/node           
tcp        0      0 127.0.0.1:42341         0.0.0.0:*               LISTEN      1523718/cockpit-bri 
tcp        0      0 127.0.0.1:11333         0.0.0.0:*               LISTEN      2119/rspamd: main p 
tcp        0      0 127.0.0.1:389           0.0.0.0:*               LISTEN      2288/slapd          
tcp        0      0 127.0.0.1:11334         0.0.0.0:*               LISTEN      2119/rspamd: main p 
tcp        0      0 0.0.0.0:5222            0.0.0.0:*               LISTEN      2427/lua5.3         
tcp        0      0 127.0.0.1:4200          0.0.0.0:*               LISTEN      2235/shellinaboxd   
tcp        0      0 127.0.0.1:25001         0.0.0.0:*               LISTEN      4416/nxrunner.bin   
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      1520757/mariadbd    
tcp        0      0 0.0.0.0:4330            0.0.0.0:*               LISTEN      1486278/pmlogger    
tcp        0      0 127.0.0.1:5290          0.0.0.0:*               LISTEN      2427/lua5.3         
tcp        0      0 0.0.0.0:587             0.0.0.0:*               LISTEN      3514/master         
tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN      1208/redis-server 1 
tcp        0      0 127.0.0.1:11211         0.0.0.0:*               LISTEN      1197/memcached      
tcp        0      0 0.0.0.0:143             0.0.0.0:*               LISTEN      2369/dovecot        
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1831/nginx: master  
tcp        0      0 127.0.0.1:26001         0.0.0.0:*               LISTEN      4332/nxnode.bin     
tcp        0      0 127.0.0.1:10001         0.0.0.0:*               LISTEN      954/postsrsd        
tcp        0      0 127.0.0.1:10002         0.0.0.0:*               LISTEN      954/postsrsd        
tcp        0      0 0.0.0.0:53              0.0.0.0:*               LISTEN      418536/dnsmasq      
tcp        0      0 0.0.0.0:5269            0.0.0.0:*               LISTEN      2427/lua5.3         
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1280/sshd: /usr/sbi 
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1487706/cupsd       
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      925770/postgres     
tcp        0      0 127.0.0.1:35673         0.0.0.0:*               LISTEN      1523702/cockpit-bri 
tcp        0      0 0.0.0.0:7001            0.0.0.0:*               LISTEN      4332/nxnode.bin     
tcp        0      0 127.0.0.1:21561         0.0.0.0:*               LISTEN      2112/nxserver.bin   
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN      3514/master         
tcp        0      0 127.0.0.1:21562         0.0.0.0:*               LISTEN      2112/nxserver.bin   
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      1831/nginx: master  
tcp6       0      0 :::636                  :::*                    LISTEN      2288/slapd          
tcp6       0      0 ::1:4700                :::*                    LISTEN      1255/cnid_metad     
tcp6       0      0 :::4190                 :::*                    LISTEN      2369/dovecot        
tcp6       0      0 :::4000                 :::*                    LISTEN      4734/nxd            
tcp6       0      0 :::993                  :::*                    LISTEN      2369/dovecot        
tcp6       0      0 :::44321                :::*                    LISTEN      2436/pmcd           
tcp6       0      0 :::44322                :::*                    LISTEN      2471/pmproxy        
tcp6       0      0 :::9090                 :::*                    LISTEN      1/init              
tcp6       0      0 :::44323                :::*                    LISTEN      2471/pmproxy        
tcp6       0      0 ::1:11332               :::*                    LISTEN      2119/rspamd: main p 
tcp6       0      0 :::548                  :::*                    LISTEN      1252/afpd           
tcp6       0      0 ::1:11333               :::*                    LISTEN      2119/rspamd: main p 
tcp6       0      0 ::1:389                 :::*                    LISTEN      2288/slapd          
tcp6       0      0 ::1:11334               :::*                    LISTEN      2119/rspamd: main p 
tcp6       0      0 :::5222                 :::*                    LISTEN      2427/lua5.3         
tcp6       0      0 :::4330                 :::*                    LISTEN      1486278/pmlogger    
tcp6       0      0 ::1:5290                :::*                    LISTEN      2427/lua5.3         
tcp6       0      0 :::587                  :::*                    LISTEN      3514/master         
tcp6       0      0 ::1:6379                :::*                    LISTEN      1208/redis-server 1 
tcp6       0      0 :::143                  :::*                    LISTEN      2369/dovecot        
tcp6       0      0 :::80                   :::*                    LISTEN      1831/nginx: master  
tcp6       0      0 :::53                   :::*                    LISTEN      418536/dnsmasq      
tcp6       0      0 :::5269                 :::*                    LISTEN      2427/lua5.3         
tcp6       0      0 :::22                   :::*                    LISTEN      1280/sshd: /usr/sbi 
tcp6       0      0 ::1:631                 :::*                    LISTEN      1487706/cupsd       
tcp6       0      0 ::1:5432                :::*                    LISTEN      925770/postgres     
tcp6       0      0 :::7001                 :::*                    LISTEN      4332/nxnode.bin     
tcp6       0      0 :::25                   :::*                    LISTEN      3514/master         
tcp6       0      0 :::443                  :::*                    LISTEN      1831/nginx: master  

Tu peux montrer le contenu de /var/www/kresus/config.ini stp (hormis les mots de passe éventuels de la BDD) ?

ah oui, dans la config de kresus c’est bien le port 35140 … j’ai essayé la commande avec ce port… ca plante pas mais ca mouline et ca n’avance pas (le timer de curl défile mais c’est tout…)

Que donne curl -L http://127.0.0.1:35140/api/all ?
Et dans le config.ini, quelle est la valeur de url_prefix ?

url_prefix:/aaargent

(oui bon huhuhu)

et la commande ne donne rien: ca « plante » mais sans donner d’erreur, ni de fin de process

EDIT: ok, j’ai compris, il faut donc: http://127.0.0.1:35140/aaargent/api/all

et la, ca me sort qq chose… je teste !