PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2024 → [WD16] générer fichier XML au norme SEPA
[WD16] générer fichier XML au norme SEPA
Iniciado por Laty, 10,mar. 2011 12:19 - 22 respuestas
Miembro registrado
26 mensajes
Publicado el 10,marzo 2011 - 12:19
Bonjour a tous,

je dois écrire une programme qui génère un fichier XML au norme SEPA, j'avoue je suis un peu perdu...
j'ai télécharger le XML Schema description mais je n'arrive pas a l'ouvrir??
ensuite je ne serai pas comment m'y prendre, par quoi commencer,
de l'aide please
Publicado el 14,marzo 2011 - 11:18
salut,

cela ne suffit pas il faut se référer à la doc disponible en ligne pour comprendre les arcanes de la norme ISO 20022 XML qui inclus tous les formats de fichiers d'échanges entre banques/banques ou banques/clients.

Toutefois, tu souhaites générer un fichier SEPA mais tu parles du SCT, SDD ou d'autre chose ?

plus d'info me contacter
Publicado el 14,marzo 2011 - 16:16
salut,

j'ai trouvé le format de fichier d'échange banque/client sur le site ISO20022, je suis entrain de comprendre.
après cette étape je dois personnaliser un logiciel de paie existant pour pouvoir généré un fichier XML au norme SEPA sous windev.

pour la suite je ne sais pas comment faire sous windev,
comment faire le lien entre mon fichier xml et les données de ma table? iban bic, etc
je sais que avec windev on peut créer un fichier XML mais comment je peux lui imposer le format de mon fichier?
merci pour ton aide, c'est précieux pour moi
STD? SDD? je ne vois pas de quoi il s'agit?
latifa
Publicado el 21,marzo 2011 - 10:50
Bonjour,

La norme ISO 200222 XML contient l'ensemble des formats d'échanges B2B/B2C.

s'agissant d'un logiciel de paie, il s'agit vraissemblablement du format SCT (SEPA CREDIT TRANSFERT) afin d'émettre des virements.

La description des modèles de documents UNIFI (ISO 20022) en XML est
réalisée au sein de schémas. Un schéma utilise un langage de description spécifique (XSD). Les schémas permettent de décrire les balises qui sont présentes dans le document, la structure et l’enchaînement de ces balises (hiérarchie des balises) ainsi que les codes autorisés pour certaines données, le nombre d’occurrences possibles,la présence obligatoire ou facultative de certaines données…

Le schéma XML CustomerCreditTransferInitiation a été défini par SWIFT et a été validé par l’International Organization for Standardization (ISO) et fait donc partie de la bibliothèque des standards UNIFI ISO 20022.
Le XSD qui correspond à la description de la structure générale pour les virements SEPA (et pour l’acquisition de virements internationaux non éligibles SEPA), est pain.001.001.02.

il faut donc analyser ce shémat pour implémenter le fichier.

je reste à ta disposition ainsi qu'à ceux qui ont besoins d'infos (directement à mon adresse électronique).
Miembro registrado
26 mensajes
Publicado el 21,marzo 2011 - 17:44
Bonjour,
merci pour ton explication, j'ai bien analysé la description du schema mais c'est bien la pain.001.001.03?
ma question est la suivante:
pour implanter ce fichier est ce que c'est possible de partir sur un exemple valide? càd instance xml valide et le modifier par rapport a mes besoins

si oui comment replacer les données de mon fichier avec les donnes de ma table?
merci pour ton aide
Publicado el 21,marzo 2011 - 18:59
oui, mais as tu un exemple sous la main ? De plus cette solution n'est pas très "professionnelle".

donc, il est préférable de travailler avec un schéma (ce qui s'avère lourd et complexe pour le ISO 200022), soit en constituant tes propres balises afin d'enrichir le fichier Xml des données de ta base.

ou encore tu fais abstraction du schéma pour générer ton fichier en t'appuyant sur un fichier xml en ta possession.
Miembro registrado
26 mensajes
Publicado el 22,marzo 2011 - 00:11
oui j'ai un exemple récent de fihicer XML,
pour générer le fichier XML, est ce que j'ai besoin d'écrire tout le code, ou y-t-il une autre méthode plus performante?
voici un bout de code, tu me diras stp si je suis ds la bon direction.
je te remercie bcp, excuse si j'abuse un peu, mais je débute avec windev et XML.


DocXML est une chaîne = "XML"
InfoXML est une chaîne // Chaîne résultat
Indice est un entier
PositionXML est un entier

XMLDocument(DocXML,"") // Crée un document XML vierge

//niveau lot
// ----------
XMLAjouteFils(DocXML,"pain.001.001.03","",Vrai) // Elément Racine
XMLAjouteFils(DocXML,"GrpHdr","",Vrai) // Noeud "Père"


XMLAjouteFils(DocXML,"MsgId","DEDIETRICHTHERSOGEFRPP48484")
XMLAjouteFils(DocXML,"CreDtTm","2010-09-28T11:44:49")
XMLAjouteFils(DocXML,"BtchBookg","true")
XMLAjouteFils(DocXML,"NbOfTxs","1")
XMLAjouteFils(DocXML,"CtrlSum",NumériqueVersChaîne(1157.73))
XMLAjouteFils(DocXML,"Grpg","MIXED")


XMLAjouteFils(DocXML,"InitgPty","",Vrai)
XMLAjouteFils(DocXML,"Nm","DE DIETRICH THERMIQUE ")
XMLAjouteFils(DocXML,"PstlAdr","",Vrai)
XMLAjouteFils(DocXML,"StrtNm","84.25")
XMLAjouteFils(DocXML,"BldgNb","57")
XMLAjouteFils(DocXML,"PstCd","58524")
XMLAjouteFils(DocXML,"TwnNm","MERTZWILER")
XMLAjouteFils(DocXML,"Ctry","FR")
XMLParent(DocXML)
Publicado el 24,marzo 2011 - 10:28
Bonjour,

le bon format est pain.001.001.03

Importer le fichier xsd dans le projet windev

puis:
virmtXML est un XMLDocument , Description = "pain.001.001.03"
virmtXML.Document.CstmrCdtTrfInitn.GrpHdr.MsgId="REF MESSAGE"
virmtXML.Document.CstmrCdtTrfInitn.GrpHdr.NbOfTxs="00002"
virmtXML.Document.CstmrCdtTrfInitn.GrpHdr.CtrlSum="1500.00"
XMLSauve(virmtXML,"test.xml",XMLDocumentDéfaut)


Cordialement
Miembro registrado
26 mensajes
Publicado el 24,marzo 2011 - 23:58
bonsoir,

a quoi sert d'importer le fichier ds le projet?
Je l'ai importé mais je n'arrive pas a l'ouvrir depuis Windev!!!est-ce normal?!!
je vois que tu as ignoré une bonne partie du schéma et tu as commencé par Groupe Header, est_ce parce que sont des infos pas utiles!!?
enfin, concernant la partie qui se répète +++ fois, comment tu l'as géré? boucle sur l'ensemble de table?
merci de ton aide.
Publicado el 25,marzo 2011 - 10:25
L'importer dans le projet permet de gerer le code comme indiqué precedement.

Tu n'a plus besoi de definir balise par balise mais seulement le chemein complet et Windev genere tout seul le cheminement.

pour les element repetitif, il faut rajouter [n] a la fin de la ligne avant la valeur ou n correspond au N° de la ligne .

A+
Miembro registrado
26 mensajes
Publicado el 25,marzo 2011 - 17:21
salut Grego30,
ok je vois mieux maintenant

a la fin de ton code tu sauvegardes ton document XML dans un fichier, mais d'ou il vient ce fichier!! tu 'as créé
car j'ai crée un fichier xml mais ca ne marche pas, voila le code que j'execute a travers d'un bouton

virmtXML est un xmlDocument, description="pain.001.001.03"
virmtXML.Document.CstmrCdtTrfInitn.GrpHdr.MsgId="REF MESSAGE"
virmtXML.Document.CstmrCdtTrfInitn.GrpHdr.NbOfTxs="00002"
virmtXML.Document.CstmrCdtTrfInitn.GrpHdr.CtrlSum="1500.00"
XMLSauve(virmtXML,"C:\temp\test.xml",XMLDocumentDéfaut)
merci bcp de ton aide, ca me permet vraiment d'avancer rapidement
A+
Publicado el 28,marzo 2011 - 12:27
Non pas besoin de créer de fichier avant.

le xmlsauve créer le fichier.

ton code doit fonctionner tel-quel.
Publicado el 29,marzo 2011 - 12:58
Deux informations importantes :

il ne faut pas confondre la disparition du protocole de communication bancaire ETEBAC le 30 septembre 2011 (qui est la conséquence directe de la disparition du protocole réseau X25 de France Télécom), avec la norme ISO 20022 xml sur laquelle s’appuie les nouveaux moyens de paiements SEPA comme le SCT (virement SEPA). il arrive que certains techniciens bancaires confondent les deux problématiques.

Le 14 janvier dernier, le comité SEPA Français à validé l'idée selon laquelle les virements domestiques franco-français(formats AFB160 et AFB320 qui avaient été définis en leur temps par le CFONB) seraient définitivement arrêtés à compter de fin juin 2013. Donc d'ici là tous les formats de fichiers cohabitent.
Miembro registrado
26 mensajes
Publicado el 30,marzo 2011 - 13:25
Bonjour Grégo,

mon code ne fonctionne que si je supprime <description = "pain.001.001.03">
donc il y a quelque chose qui ne respecte pas la validité de mon XSD
penses_tu que ca un rapport avec l'élement Schema de mon xsd suivant?

<xs:schema xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.001.03" xmlns:xs="http://www.w3.org/2001/XMLSchema"

excuse ça fait une matiné que je suis dessus mais je ne trouve pas
merci de ton aide
Miembro registrado
26 mensajes
Publicado el 31,marzo 2011 - 17:34
bonjour,
j'ai un petit soucis avec le format de la date "ISODateTime "de mon fichier xml

voila mon code:
virmtXML.Document.CstmrCdtTrfInitn.GrpHdr.CreDtTm="2011-03-31T15:29:00.000Z"

voici l'erreur générer lors de la compil:

La valeur '2011-00-03T31:00:05.029' ne respecte pas le schéma XSD.

de l'aide svp, je cherche en attendant, un petit coup de main est le bienvenue-:)
Miembro registrado
26 mensajes
Publicado el 01,abril 2011 - 15:36
je cherche à valider mon fichier XML
mais j'ai un message d'erreur sur la line de code:

virmtXML.Document."pain.001.001.02".GrpHdr.MsgId..Texte="ABC/06/09/28/CCT001"

l'erreur est :"L'expression n'est pas évaluable
merci de votre aide
Publicado el 10,junio 2011 - 18:40
Bonjour,

J'ai utilisé ce programme allemand pour valider mon fichier Xml.

http://subsembly.com/de/sepa-api.html

Cordialement Denis
Publicado el 19,agosto 2011 - 16:13
Bonjour,

Pouvez vous m'indiquer l'endroit où vous avez trouver les XSD pain.008.001.02 et pain.001.001.03

S'il vous plait,

J'ai fait tous les sites présents sur google et impossible de trouver ces deux XSD.

Merci d'avance pour votre aide,

Cordialement,
Publicado el 21,marzo 2013 - 15:15
tu peux trouver le fichier xsd sur le site www.iso20022.org
Attention il faut chercher un peu
ou http://www.iso20022.org/documents/messages/pain/schemas/pain.008.001.02.zip
bien a toi
Publicado el 19,agosto 2013 - 16:00
Bonjour,
je suis actuellement en stage pour developper un module pour une application web de gestion de copropriétés afin de pouvoir émettre des virements et des prélèvements a l'aide de la norme SEPA (SCT, SDD).
le module doit permettre à chaque copropriété à partir de sa session de faire des pélèvements sur les comptes bancaires de ses propriétaires et émettre des virements sur les comptes bancaires de ses fournisseurs.
chaque copropriété possède son propre compte bancaire.
l'appli gère environ 1000 copropriétés.
Si quelqu'un s'est déja confronté a ce genre de problématique, une aide est la bienvenue.
je connait la procédure à suivre pour mettre en place la norme SEPA avce une banque mais ce que je cherche, est un moyen s'il existe, afin d'éviter de traiter chaque banque de chaque copropriété.

merci d'avance.
cordialement,
Publicado el 13,noviembre 2013 - 09:25
Mass-generation.com
Publicado el 27,septiembre 2018 - 09:56
Bonjour,
Les bibliothèques des fichiers XML ISO2022 sont disponible dans la base SWIFT.
Vous y trouverez:
Le descriptif de chaque type de fichier (SCT SEPA, hors SEPA, SDD, des exemples ..)
Bien évidemment il faut être abonné chez SWIFT
Sinon, la description des fichiers et des valeurs attendues dans les balises sont disponibles gratuitement dans les services télématiques de votre banque.
Il faut savait que:
le format XMLpain_001_001_03 pour les SCT peut être utilisé pour les opérations purement SEPA (en euro dans les pays de la zone SEPA) mais également à l'international (USA, CANADA,ASIE PACIFIQUE, RUSSIE..) en respectant quelques règles spécifiques pour chaque pays (valeurs à renseigner dans quelques balises).
En fait c'est votre banque qui traduira ce message par un message interbancaire SWIFT MT101.

==> donc le XMLpain_001_001_03 peut remplacer avantageusement les CFONB160 et le CFONB320 anciens formats Franco Français.

pour assurer le succès de vos instructions bancaires hors zone SEPA, il faut prévoir de renseigner :
-nom et adresse du bénéficiaire
-nom et adresse de la banque du bénéficiaire
-Code SWIFT de la banque intermédiaire éventuelle, (les banques du continent Américain n'adhérant généralement pas à la messagerie SWIFT)
-Code local de l'opération pour le contrôle des flux.

Ce besoin de développer un générateur de fichiers ISO20022XML étant général à beaucoup d'entre nous, je suis preneur de vos avancées sur le sujet. :)
Publicado el 02,diciembre 2021 - 15:16
Bonjour.
Je remonte le sujet après avoir lu que beaucoup de développeurs finissent par développer leur propre système de génération de fichier XML pour les prélèvement SEPA en banque.
Et bien j'en suis.

Avez-vous un code concret fonctionnel pour des exemples ?
Merci
Banque CM