Juste pour comprendre le fonctionnement des synchronisation entre un PALM et un PC sous windows, j'ai réalisé une conduite entre le programme MaTirelire et un PC.
MaTirelire est un gestionnaire de comptes bancaires pour Palm OS.
Une liste de diffusion est accessible sur Voila.
Requis
La version 3.0.1 de hotsync est nécessaire au minimum .
Les versions antérieures de hotsync ne peuvent pas faire fonctionner
les conduites COM
Pour ceux qui sont anglophobes, j'ai traduit la documentation qui indique comment synchroniser avec l'émulateur
Actuellement la conduite est complète.
Mode |
Fonctionnel |
Synchronisation des fichiers |
Oui, Version 1.1 et ultérieures |
PC écrase PALM |
Oui |
PALM écrase PC |
Oui |
Ne rien faire |
Oui |
Environnement COM de PALM (1.02 Mo) pour
ceux qui ne l'ont pas encore installé. Ce fichier est nécessaire
au bon fonctionnement de la conduite
Conduite (1.47 Mo) avec
l'environnement d'exécution VB
Conduite seule (54.7 Ko) pour ceux
qui possède déjà l'environnement d'exécution de VB 6.0. Comme
il est nécessaire d'enregistrer les DLL dans la base de
registre, le fichier enreg.bat est chargé de cette opération.
Version 1.3.2 (50.1 Ko)
qui permet de faire des suppressions sur PALM et sur PC
Tous les fichiers sont compressés au format ZIP, si vous ne
possèdez pas de logiciel permettant de lire ce format, vous
pouvez trouver une version d'évaluation de WINZIP à l'adresse
suivante www.winzip.com ou un
clone gratuit permettant de lire les fichiers ZIP à l'adresse
suivante www.powerarchiver.com
Pour une nouvelle installation complète, il faut installer
dans l'ordre :
- Environnement COM de PALM
- Conduite
- Conduite seule
Il faudra lancer une seule fois le programme installeur.exe pour déclarer
la présence de la conduite à hotsync.
Pour une mise à jour, il faut uniquement installer la Version
1.2.2 de la conduite. Il faut juste copier la nouvelle DLL
dans la même répertoire que celui d'installation. Elle annule
et remplace les fonctionnalités de la version précédente.
La conduite a été testée avec les versions 3.0.1, 3.0.3, 3.1.0,
4.0, 4.0.0 de hotsync
Les options présentent dans le cadre Hotsync action sont suffisamment explicites pour éviter d'être détaillées
Programme à lancer avant la Hotsync sert à préciser si un programme doit être utilisé avant de synchroniser les fichiers entre le PALM et le PC.
Le programme reçoit en paramètre le nom et le chemin du fichier MaTirelire.txt
Programme à lancer après la Hotsync sert à préciser si un programme doit être utilisé après avoir synchroniser les fichiers entre le PALM et le PC, comme par exemple le programme ToQif qui permet de créer un ou plusieurs fichier(s) QIF résultant de la synchronisation.
Le programme reçoit en paramètre le nom et le chemin du fichier MaTirelire.txt
Ces deux dernières options permettent à ceux qui le veulent de migrer les fichiers textes de la conduite vers d'autres logiciels.
Si la case à cocher Détruire les anciens fichiers est désactivée, les fichiers existant sont jetés à la poubelle avant d'être modifiés par l'opération de synchronisation
Lors de la synchronisation, plusieurs fichiers vont être créés
dans le répertoire MaTirelire de votre répertoire de
synchronisation. Par défaut le répertoire est c:\palm\NomUtilisateur
Les fichiers suivants vont être générés :
Nom |
Fonction |
categories.txt |
Liste des catégories |
Desc.txt |
Descriptions |
MaTirelire.txt |
Contenue des données |
Mode.txt |
Mode de paiement |
Type.txt |
Type d'opération |
Détail du fichier categories.txt
Chaque ligne contient un enregistrement sous la forme suivante
:
Libellé, identification, affichable.
Libellé représente une chaîne de caractères
identification est une valeur numérique de 0 à n, où représente
la maximum autorisé
affichable prend la valeur Vrai si elle doit être affiché,
sinon tout autre valeur.
Exemple
Non classés, 0,Vrai
CCP , 1,Vrai
BNP, 2,Vrai
PEL, 3,Vrai
Détail du fichier Desc.txt
Ce fichier contient les descriptions à raison d'une
description par ligne
Exemple
Solde
Retrait d'espèces
Versement espèces
Remise chèque
Détail du fichier Mode.txt
Ce fichier contient les modes de paiement à raison d'un mode
de paiement par ligne
Exemple
Cheque
Carte
Détail du fichier Type.txt
Ce fichier contient les type d'opération à raison d'un type
d'opération par ligne
Exemple
Alimentation
Retrait
Transports
Courses
Détail du fichier MaTirelire.txt
Chaque ligne contient une opération
Le séparateur utilisé est ;
- Identification unique d'un enregistrement existant, 0 si
nouvel enregistrement
- Catégorie, correspondant à l'id de la catégorie du fichier categorie.txt
- Attribut, utiliser la valeur 64 pour les ajouts ou modifications
et 128 pour les enregsitrements à supprimer
- Date sous la forme jj/mm/aaaa hh:nn
- Montant en centimes
- Validé 0-> non 1-> Pointé 2-> Marqué 3->Marqué et pointé
- Mode de paiement, rang du fichier mode.txt sinon 64. Le premier rang du fichier mode.txt porte le numéro 0
- Type d'opération, rang du fichier type.txt sinon vide. Le premier rang du fichier Type.txt porte le numéro 0
- Numéro du cheque sinon vide
- Date de valeur au format jj/mm/aaaa sinon vide
- Répétition sinon vide
- Transfert , identification de l'opération transférée sinon vide
- Libellé, pour utiliser un libellé sur plusieurs lignes, il faut uniquement utiliser le caractère LF (code ASCII 10) et non le couple CR (code ASCII 13 ) LF (code ASCII 10)
Exemple
7102463;1; 64;01/12/2001 11:25:00;140000;1;;;;;;;salaire
7102464;1; 128;01/12/2001 11:30:00;5000;1;;;;;;;Erreur
0;0; 64;05/12/2001 14:57:00;-6902;0;3;;;;;;Carrefour
Telecharger ToQIF (103 ko)
Ce petit programme peut être utilisé pour généré autant de fichier QIF que de compte existant sur le palm.
Il doit être placé dans la partie Programme à lancer après la Hotsync de la configuration (voir figure ci-dessus).
Le fichier ToQIF.ini fournis doit être copié dans le même répertoire que le fichier MaTirelire.txt
Contenu du fichier ToQIF.INI
[general]
; 0 -> Pas de trace 1 -> Avec les traces
trace = 0
; M -> mm/dd/yy , S -> dd/mm/yy, sinon dd/mm/yyyy
FormatDate = S
[Format]
; choix des délimiteurs du fichier QIF, mettre un - si la zone ne doit pas être utilisée
Date = D
Montant = TU
Pointage = C
Mode = N
Tiers = PM
Type = L
[DICO]
;[Type], [Mode], [Tiers] = Nouveau type
Frais bancaire,Carte,retrait = Retrait liquide
Comme les paramètres Type, Mode, Tiers sont optionnels, il est possible de ne pas les utiliser, dans ce cas il faut utiliser le signe *, par exemple
[DICO]
;[Type], [Mode], [Tiers] = Nouveau type
Frais bancaire,Carte,retrait = Retrait liquide
Frais bancaire,*,retrait = Retrait liquide
*,*,* = Tout remplacer
Dans mon exemple de fichier CATEGORIES.TXT je donne comme contenu
Non classés, 0,Vrai
CCP , 1,Vrai
BNP, 2,Vrai
PEL, 3,Vrai
Ce qui fait que le programme ToQIF va généré les fichiers suivants :
Non classés.qif
CCP.qif
BNP.qif
PEL.qif
Exemple sans option
!Type:Bank
D20/04/2002
T1400
U1400
CX
PSalaire
MSalaire
^
D15/04/2002
T-15.00
U-15.00
C
NCarte
Pessence
Messence
LVoiture:Essence
^
Exemple avec option m ou M
!Type:Bank
D04/20/02
T1400
U1400
CX
PSalaire
MSalaire
^
D04/15/02
T-15.00
U-15.00
C
NCarte
Pessence
Messence
LVoiture:Essence
^
Exemple avec option s ou S
!Type:Bank
D20/04/02
T1400
U1400
CX
PSalaire
MSalaire
^
D15/04/02
T-15.00
U-15.00
C
NCarte
Pessence
Messence
LVoiture:Essence
^
Le contenu des fichiers QIF est renseigné d'après les spécifications du format QIF dont voici ci-dessous un extrait en anglais:
FieldIndicator Explanation
D Date
T Amount
U Amount
C Cleared status
N Num (check or reference number)
P Payee
L Category (Category/Subcategory/Transfer/Class)
^ End of the entry
Telecharger ToCSV (105 ko)
Ce petit programme peut être utilisé pour générer autant de fichier CSV que de compte existant sur le palm.
Il doit être placé dans la partie Programme à lancer après la Hotsync de la configuration.
Dans mon exemple de fichier CATEGORIES.TXT je donne comme contenu
Non classés, 0,Vrai
CCP , 1,Vrai
BNP, 2,Vrai
PEL, 3,Vrai
Ce qui fait que le programme ToCSV va généré les fichiers suivants :
Non classés.csv
CCP.csv
BNP.csv
PEL.csv
Exemple sans option
Date;Type;Tiers;Catégorie;Débit;Crédit;P
20/04/2001;VIRMT;Salaire;Salaire;;1400;X
09/09/2001;Carte;essence;Voiture:Essence;21,80;
Exemple en utilisant la ,
Date,Type,Tiers,Catégorie,Débit,Crédit,P
20/04/2001,VIRMT,Salaire,Salaire,,1400,X
09/09/2001,Carte,essence,Voiture:Essence,21.80,
Telecharger ToOFX (8 ko)
Ce petit programme peut être utilisé pour générer autant de fichier OFX que de compte existant sur le palm.
Il doit être placé dans la partie Programme à lancer après la Hotsync de la configuration.
Le fichier ToOFX.ini fournis doit être copié dans le même répertoire que le fichier MaTirelire.txt
Contenu du fichier ToOFX.INI
[General]
Dest=c:\quickenw\OFXData
[CCP]
Version = 102
TRNUID=1234567890
CURDEF=EUR
BANKID=45678
BRANCHID=13245
ACCTID=12345678901
La section General contient dans le paramètre dest le répertoire de destination des fichiers OFX, dans cet exemple c'est le répertoire de Quicken
La section CCP est le nom du compte dans MaTirelire, c'est ce compte qui doit être présent dans les catégories
Il faut que les paramètres suivant soient identique dans l'application qui va utilisr les fichiers OFX, pour plus d'information veuillez vous reporter à la documentation du logiciel correspondant (Quicken, Money, ...)
Le paramètre Version est le numéro de version du fichier OFX
Le paramètre TRNUID est le numéro d'abonné
Le paramètre CURDEF est la monnaie à utiliser
Le paramètre BANKID est le code banque, c'est la première partie d'un RIB
Le paramètre BRANCHID est le code guichet, c'est la seconde partie d'un RIB
Le paramètre ACCTID est le numéro de compte, c'est la dernière partie d'un RIB, à utiliser sans la clef
Dans mon exemple de fichier CATEGORIES.TXT je donne comme contenu
Non classés, 0,Vrai
CCP , 1,Vrai
BNP, 2,Vrai
PEL, 3,Vrai
Ce qui fait que le programme ToOFX va généré les fichiers suivants :
Non classés.OFX
CCP.OFX
BNP.OFX
PEL.OFX
Exemple de fichier OFX
OFXHEADER:100
DATA: OFXSGML
VERSION:102
SECURITY: NONE
ENCODING: USASCII
CHARSET:1252
COMPRESSION: NONE
OLDFILEUID: NONE
NEWFILEUID: NONE
<OFX>
<SIGNONMSGSRSV2>
<SONRS>
<STATUS><CODE>0<SEVERITY>INFO</STATUS>
<DTSERVER>20030421
<LANGUAGE>FRA
<COUNTRY>FRA
</SONRS>
</SIGNONMSGSRSV2>
<BANKMSGSRSV2>
<STMTTRNRS>
<TRNUID>1234567890
<STATUS><CODE>0<SEVERITY>INFO</STATUS>
<STMTRS>
<CURDEF>EUR
<BANKACCTFROM>
<BANKID>30041
<BRANCHID>13245
<ACCTID>12345678901
<ACCTTYPE2>checking
</BANKACCTFROM>
<BANKTRANLIST>
<DTSTART>19700101
<DTEND>20030421
<STMTTRN>
<TRNTYPE>CREDIT
<DTPOSTED>20011201
<DTUSER>20011201
<TRNAMT>1400.00
<FITID>7102463
<NAME>salaire
</STMTTRN>
<STMTTRN>
<TRNTYPE>CREDIT
<DTPOSTED>20011201
<DTUSER>20011201
<TRNAMT>50.00
<FITID>7102464
<NAME>Erreur
</STMTTRN>
</BANKTRANLIST>
<LEDGERBAL>
<BALAMT>1450
<DTASOF>20030421
</LEDGERBAL>
<AVAILBAL>
<BALAMT>1450
<DTASOF>20030421
</AVAILBAL>
</STMTRS>
</STMTTRNRS>
</BANKMSGSRSV2>
</OFX>
Telecharger matirecsv.pl
Cet utilitaire est écrit en Perl
Perl est un interpreteur de script. Tu dois pouvoir trouver un package d'installation sur le web
Il faut mettre dans le champ "Programme à lancer après la hotsynch"
"F:\perl\perl D:\Matirelire\matirecsv.pl -f"
(sans les guillemets) en remplaçant "F:\perl" par le répertoire ou est installé perl, et "D:\Matirelire\" par celui ou est rangé le script.
matirecsv.pl v0.9.0 - CVS file formater for Matirelire HotSync Files
Copyright (c)2004 by Jiffax
./matirecsv.pl [-F FormatString] [-N AccountName] [-S Separator] [-L] -f MatireFile
-f MatireFile: complete name (with all path) of Matirelire conduit MaTirelire.txt generated file
-F FormatString: IADdMmPOTNVRtLn
-N AccountName: Name of an account, ar all if not given
-S Seperator: caracter separator. Defaut is ','
-L: don't use log (log.txt). Default is logging
Format String detail. Each Letter stand for a field of MatireFile line.
Put the letters in the order of your choice (repetitions allowed).
This order will be the order used in the target csv file.
Default: JMLnOnnT
I: Record ID
A: Attribute
D: Date (format DD:MM:YY hh:mm:ss)
d: Date (format DD:MM:YY)
J: Date (format DD)
M: Amount (+ and - in 2 separated columns, each figure positive)
m: Amount (+ and - in same column)
P: Valide / pointe ...
O: Mode of operation
T: Type
N: Check number
V: Value date
R: Repetition
t: Transfer
L: Label (text description of the operation)
n: null (empty field)
Log file name is matirecsv.log and is located either in $TEMP , $TMP or C:\ directory
Version |
Amélioration |
1.3.2 |
- Si une catégorie est supprimée alors qu'elle possède encore des enregistrements, les données sont copiées sur le disque
|
1.3.1 |
- Fonctionnement multi langue
- Les marques ne sont plus supprimés lors de la synchronisation
|
1.2.3 |
- Le programme qui doit se lancer après le synchronisation est executé aprés la création du fichier MaTirelire.txt sur le disque du PC et non avant.
|
1.2.2 |
- Les enregistrements peuvent être supprimés sur PALM
et sur PC si l'option utilisation de la conduite est cochée
sur le PALM
- Les types, modes et desc sont tronqués au maximum autorisé
|
1.2.1 |
- Les fichiers ne sont jetés à la poubelle que si
l'option correspondante est cochée dans l'écran de
configuration
- Si un des fichiers textes est absent lors de la
synchronisation, le message d'erreur n'apparait plus
|
1.2.0 |
- Corrige des problèmes dans la synchronisation des
cathégories entre le PALM et le PC
- Il n'est plus possible de dépasser les maxima des notes,
desc et type
- Les caractères non affichables sont supprimés
- Possibilitée de lancer des programmes avant et après
synchronisation de la base, ces programmes recevrons le
nom et le chemin du fichier MaTirelire.txt comme paramètre
- Les données sont triées avant d'être inscritent dans
la PALM
- Les fichiers utilisés avant la synchronisation sont jetés
à la poubelle au lieu d'être détruits
|
1.1.0 |
- Permet de faire une synchronisation entre le PC et le
PALM
|
1.0.1 |
- Corrige le problème des montant de -300 qui sont
converti en -492 dans le programme MaTirelire
|
1.0.0 |
|
Historique toQIF
Version |
Amélioration |
1.0.0.7 |
- Gestion du numéro de cheque <100
|
1.0.0.6 |
- Gestion du numéro de cheque
|
1.0.0.5 |
- Mise en place d'un système permettant de choisir ces balises QIF
- Mise en place d'un dictionnaire de traduction entre les types MaTirelire et les types QIF
- Les caractères '>', '<', '?', '*' sont autorisés dans les libellés de compte
|
1.0.0.4 |
- Le filtrage des caractères des libellés n'élimine plus les caractères accentués
|
1.0.0.3 |
- Les multi lignes sont filtrés dans les libellés
- L'option s ou S permet de choisir le format de date court ou long
- Le problème des défaillances de page dans le module TOQIF.EXE devrait être réglé
|
1.0.0.2 |
- Possibilité de choisir le format des dates entre le format français et le format anglais
|
1.0.0.1 |
- Version d'origine recompilée
|
1.0.0.0 |
|
Historique toCSV
Version |
Amélioration |
1.0.0.5 |
- Les caractères '>', '<', '?', '*' sont autorisés dans les libellés de compte
- Le problème des défaillances de page dans le module TOCSV.EXE devrait être réglé
|
1.0.0.4 |
- Le filtrage des caractères des libellés n'élimine plus les caractères accentués
|
1.0.0.3 |
- Les multi lignes sont filtrés dans les libellés
|
1.0.0.2 |
- Possibilité de choisir le délimiteur entre les colonnes, la valeur par défaut est le ; mais il est possible de choisir le délimiteur de son choix
|
1.0.0.1 |
- Version d'origine recompilée
|
1.0.0.0 |
|
Historique toOFX
Version |
Amélioration |
1.0.0.0 |
|
MaTirelire le site du programme de gestion de compte en banque sur PALM
La liste de diffusion est accessible sur Voila.
Palm le site officiel de PALM
|