Codes Postaux 2.6 LiveCode
Description
Codes Postaux est une pile LiveCode permettant de retrouver un code postal en France, Belgique, Espagne, Italie, Luxembourg et Suisse. La recherche peut se faire :
- par tout ou partie du code postal,
- par tout ou partie du nom (recherche phonétique),
- par la combinaison des deux.
Codes Postaux est freeware et fonctionne sous MacOS X, Windows et Linux.
La version 2.6 corrige un problème de fonctionnement sous Windows.
Utilisation comme application
Installation
- Copiez sur votre disque dur la pile « Codes Postaux » : l'autre pile est un exemple de scripts programmés fonctionnant avec Codes Postaux ;
- Si vous n'avez pas l'application LiveCode, installez un Player adapté à votre plateforme ;

Démarrage
Double-cliquez le fichier « CodesPostaux.livecode ».
Saisissez le nom d'une ville ou le début de son code postal (2 à 5 chiffres).

Recherche par code postal ou le nom
Sélectionnez dans la liste qui s'affiche la ville choisie pour la copier automatiquement dans le Presse-Papier.

S'il y a plusieurs réponses pour un même code, Codes Postaux affiche en début de liste le bureau principal suivi des bureaux secondaires. Si vous cochez la case « bureaux disributeurs », vous éliminez les bureaux secondaires (France seulement).

Recherche combinée
Une recherche combinée consiste à spécifier, dans la zone de recherche, le début (1 à 5 chiffres) d'un code postal et une chaîne de caractères : cette dernière peut être en orthographe exacte ou approchée. Séparez les deux critères par une virgule, ils peuvent être dans un ordre quelconque. Il n'est pas possible de mettre à la fois deux départements ou deux villes.
Dans les recherches invoquant des caractères (et non des chiffres) la recherche s'effectue en ignorant les accents et en prenant un équivalent phonétique du mot. Par exemple : 69,chato

Recherche autre pays
Pour rechercher le code postal dans un autre pays, sélectionnez le pays dans le menu local.
Les recherches se font de la même manière.
Les pays disponibles sont les suivants :
- France
- Allemagne
- Belgique
- Espagne
- Italie
- Luxembourg
- Suisse
Utilisation comme base de données codes postaux
En mettant la pile « in use », vous pouvez utiliser les fonctions de Codes Postaux dans votre propre pile.
Recherche de codes
La syntaxe d'un appel à est la suivante :
RequestCPOS Clé, [bureauxSeuls,[RamenerLignes]]
Clé | code postal ou chaîne de caractères ou recherche combinée. |
bureauxSeuls | Mettez un caractère quelconque pour n'obtenir que les bureaux principaux (France seulement). |
RamenerLignes | Mettez "true" pour obtenir toutes les lignes correspondant à la clé spécifiée et traitez les vous-même dans le script appelant. |
global gCposSearchPays : globale correspondant au code iso à 2 caractères du pays dans lequel la recherche s'effectue (FR,BE,ES,IT,LU,CH). Si cette globale n'est pas renseignée, la recherche s'effectue pour la France.
Function GetCposPays() : fonction retournant la liste des codes iso des pays supportés.
Aide à la saisie avec mise en place de majuscules au bon endroit
La fonction AideSaisie() met une majuscule au début de chaque mot de la valeur passée en paramètre, en tenant compte de son type :
AideSaisie(valeur, [type de valeur]
Clé | valeur à transformer. |
type de valeur |
|
Ne fonctionne qu'en français. Des exemples de scripts sont disponibles dans la pile d'exemples « test CodesPostaux.livecode » jointe au fichier à télécharger.
Exemple d'aide à la saisie de champs d'un carnet d'adresse
on CloseField
-- formattage des champs spéciaux
global gCposSearchPays,gSupportedPays
put the short name of the target into theName
if theName is among items of "nom,prénom,rue,ville" then
if theName is among items of "nom,prénom" then
-- placement des initiales en majuscules
get aidesaisie(it)
put it into target
else if theName = "rue" then
-- non capitalisation du type de voie et des articles
get aidesaisie(it,"rue")
put it into target
else if theName = "ville" then
-- placement auto code postal et ville si le pays est supporté
GetCountry -- pays de l'adresse
if gCposSearchPays is among items of gSupportedPays then
RequestCPOS it
get the result
if it = "cancel" or it = empty then exit to top
replace "," with " " in it
put it into target
end if
end if
else pass CloseField
end CloseField
Voyez également le Carnet d'adresses, qui utilise cette pile et est compatible avec les formats vCard d'OutLook, Palm Desktop, etc.