Chapitre 5. Le fichier ABC/XML et la DTD.
Ayant modélisé hiérarchiquement
l'application ABC, nous devons la transposer sous forme de document XML.
Lors d'une première étape, nous créerons la
DTD qui comme nous l'avons vu plus avant, validera notre document XML.
Ensuite, la seconde étape consistera à
élaborer le document XML correspondant, et à y saisir de
l'information.
La DTD.
Dans la DTD, nous devons traduire les tables issues des
modélisations ERD et Hiérarchiques. XML retient la notion
d'élément, nos tables deviendront des éléments.
Le terme d'attribut restera, un élément comportant
des attributs, tout comme une table comporte des attributs.
Hormis le fait de créer des éléments et
leurs attributs, nous devons également définir dans la DTD la
structure des relations entre éléments et leur ordonnancement.
Les relations entre éléments.
ABC
|
|
|
|
|
|
|
|
charge_indirecte
|
|
|
client
|
|
famille _ coût
|
|
|
activite
|
|
imputation
|
|
|
|
commande
|
|
|
|
composition
|
|
|
|
composition
|
|
|
|
|
|
|
|
|
|
_famille
|
|
|
|
_activite
|
mesurage
|
|
|
|
|
|
|
|
|
charge- directe
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
PCMN
|
|
|
|
|
PCMN
|
|
|
|
|
PCMN
|
|
|
|
|
|
|
|
|
|
|
|
|
compofam/Activite
|
|
|
|
|
|
|
|
|
|
|
|
|
Mesurage/Activite
En examinant le modèle hiérarchique, nous
distinguons que les tables se répartissent en quatre « colonnes
» distinctes, qui sont quatre relations parent/enfants
d'éléments.
Ces quatre relations sont reliées entre elles par les
trois éléments ayant deux parents, « mesurage », «
composition_activite » et « pcmn » comme nous l'avons vu dans la
modélisation hiérarchique.
XML autorise deux types de liens entre éléments:
l'imbrication des éléments ou les pointeurs.
L'imbrication des éléments.
L'imbrication d'éléments consiste à inclure
l'(es) élément(s) enfant(s) dans l'élément
parent.
Le défaut de cette méthode est une lourdeur du
document due à la redondance de l'information. XML est par nature
verbeux, ce n'est donc pas anormal.
Nous imbriquerons les quatre « colonnes » du
modèle hiérarchique.
- L'élément racine (vide) « ABC » inclut
les éléments « client », « activite », «
famille_cout », « charge indirecte » et « pcmn ».
- L'élément « client » inclut «
commande » qui inclut « mesurage » et « charge_directe
». - L'élément « Activite » inclut «
composition_activite ».
- L'élément « Famille_cout » inclut
« composition_famille ».
- L'élément « charge indirecte » inclut
« imputation ».
Les pointeurs.
Les pointeurs utilisent généralement les types ID
IDREF(S) pour mettre des éléments en relation. Pour
établir la relation entre les éléments pointés par
les attributs ID IDREF(S) situé dans des éléments
distincts, l'outil de requête compare la valeur de ces attributs.
Exemple: si l'attribut IDREF d'un élément «
livre » prend pour valeur « memoire1 » et l'attribut ID d' un
élément « bibliothèque » prend pour valeur
« roman10 », l'évaluation comparative ne permettra pas de
liaison.
Si par contre l'attribut ID devient « memoire1 », la
liaison entre les éléments par le pointeur sera
établie.
Comme nous le verrons plus bas, la notion de pointeur peut
relever de la comparaison d'attributs identifiant sans recourir à ID
IDREF.
Si les pointeurs permettent un découplage des
éléments, il génèrent un inconvénient: la
lenteur de traitement.
Le parseur ne navigue pas facilement entre les ID IDREF, la
relation ID IDREF est unidirectionnelle: de IDREF vers ID s'opère
facilement, mais l'inverse est plus laborieux.
Cela implique que le parseur doit parfois effectuer plusieurs
passages au sein du document si l'élément comportant le ID est
positionné avant celui contenant IDREF.
Ce processus peut devenir laborieux pour les fichiers XML de
grande taille.
Nous aurons recours à cette méthode, notre fichier
ABC_XML ayant peu de chances d'atteindre une taille critique.
(source: XML et bases de données. ISBN: 2-212-09282-2 page
34-35).
Nous utiliserons des pointeurs pour relier les quatre groupes
d'éléments de relation définis ci-dessus
Chapitre 5. Le fichier ABC/XML et la DTD
- « mesurage » pointe vers « activite »
- « composition_activite » pointe vers «
famille_cout »
- « imputation » pointe vers « pcmn »; «
composition_famille » pointe vers « pcmn »; « charge
_directe » pointe vers « pcmn ».
Nous remarquons que les pointeurs portent sur trois les
éléments « multi-parents » évoqués en
modélisation hiérarchique.
Organisation de l'ordre des éléments.
Nous devons choisir l'ordre dans lequel apparaîtront ces
éléments imbriqués.
Nous optons une représentation lisible.
ABC
client
commande
mesurage
charge- directe
activite
composition _activite
famille_ coût
composition _famille
charge_indirecte
imputation
A savoir: partir de client et de sa commande qui fait l'objet de
mesurages ayant trait à des activités constituées de
familles de coûts elles mêmes composées de charges
indirectes.
La DTD en pratique. Elément racine.
La première ligne de la DTD déclare
l'élément racine qui est « ABC » ainsi que les
éléments imbriqués dans ABC
<!ELEMENT ABC (client+, activite+, famille_cout+,
charge_indirecte+, pcmn+)>
Plusieurs instances de ces éléments sont
autorisées dans le document XML du fait de la présence du signe +
suivant chacun des éléments déclarés
(client+,..etc..)
Elément « client ».
<!ELEMENT client (commande+)>
L'élément « client » est
déclaré, il inclut un élément « commande
» qui peut faire l'objet de plusieurs instantiations.
<!ATTLIST client
id_client (jaeger01| cairelli02| panerai03) #REQUIRED nom
(jaeger| cairelli| panerai) #REQUIRED
adresse CDATA #REQUIRED>
|
Pour chaque élément (sauf « ABC » qui est
vide), nous déclarons la liste des attributs correspondant.
La liste des attributs de l'entité « client »,
soit <!ATTLIST client> :
- id_client, dont le type est une liste de choix entre les
différentes valeurs possibles pour cet attribut, soit « jaeger01
» ou « cairelli02 » ou bien « panerai03 ». Il n'est
pas possible d'encoder dans le futur document XML une valeur autre que ces
trois, autorisées par la DTD.
- nom, où nous saisirons le nom du client avec logiquement
trois possibilités, soit « jaeger » ou « cairelli »
ou bien « panerai ».
- adresse, où figurera l'adresse du client, de type
CDATA.
Elément « commande ».
<!ELEMENT client (commande+)>
<!ELEMENT commande (mesurage+, charge_directe+)>
<!ATTLIST commande
id_commande CDATA #REQUIRED
descriptif CDATA #REQUIRED
chiffre_affaire CDATA #REQUIRED>
|
La déclaration de l'élément commande
intervient au sein de « client », lui-même comportant les
éléments mesurage et charge_directe (plusieurs instantiations de
mesurage et de charge_directe sont possibles) , l'élément
commande étant un élément imbriqué dans
l'élément client.
Les attributs de l'élément « commande »:
« id_commande », « descriptif » et « chiffre_affaire
»,
tous trois en format CDATA.
Notons que nous n'avons pas utilisé un attribut «
id_client » dans l'élément « commande »,
contrairement à ce qu'indiquent les schémas de
modélisation ERD et hiérarchique, où il avait un
rôle de pointeur qui n'est plus nécessaire, les entités
« client » et « commande » étant
imbriquées.
Elément « mesurage ».
<!ELEMENT client (commande+)>
<!ELEMENT commande (mesurage+)>
<!ELEMENT mesurage EMPTY>
<!ATTLIST mesurage
id-mesurage CDATA #REQUIRED
id_aktivite IDREF #REQUIRED
date CDATA #REQUIRED
quantite CDATA #REQUIRED
unite_oeuvre (heure_communication| heure_demarchage|
article_unitaire| kilometre| heure_production| heure_comptabilite_abc|
minute_telecom) #REQUIRED >
|
Nous déclarons ensuite l'élément «
mesurage » qui ne comporte pas d'élément imbriqué, et
est donc « EMPTY ».
Les attributs de cette élément: « id_mesurage
», « id_aktivite », « date » (du relevé),
« quantite » (d'unités d'oeuvre) et « unite_oeuvre »
avec une liste de choix imposés.
Nb. Il a été choisi d'orthographier «
id_aktivite » avec un « k » pour être en mesure de la
distinguer d'un second attribut « id_activite ».
Notons que l'attribut « id_activite » est de type
IDREF: il s'agit du pointeur reliant l'élément « mesurage
» à l'élément « activite ».
Ici aussi, du fait de l'imbrication, l'attribut «
id_commande » des modélisations précédentes n'a pas
été créé.
Elément « chargedirecte ».
<!ELEMENT charge_directe EMPTY>
<!ATTLIST charge_directe
id_charge_d CDATA #REQUIRED
id_pcmn (601000| 620000) #REQUIRED montant_dir_htva_impute CDATA
#REQUIRED quantite CDATA #REQUIRED>
|
Nous déclarons enfin l'élément «
charge_directe ».
Ses attributs sont: « id_charge_d », « id_pcmn
» qui a une liste de choix de postes pcmn autorisés, «
montant_dir_htva_impute » et « quantite ».
Sauf « id_pcmn », les attributs sont de type CDATA.
Comme pour l'élément « mesurage »,
l'attribut « id_commande » n'est plus repris. Elément
« activite ».
<!ELEMENT activite (composition_activite+)>
<!ATTLIST activite
id_activite ID #REQUIRED
nom_activite (act1_communication| act2_demarchage|
act3_logistique| act4_transport| act5_production| act6_comptabilite_abc|
act7_telecom ) #REQUIRED>
|
L'élément « activite » qui inclut un
élément « composition_activite » peut être
instancié une ou plusieurs fois. Les attributs en sont «
id_activite » et « nom_activite », avec une liste de choix;
« id_activite » est de type ID.
Il assure le lien avec l'attribut IDREF que nous décrivons
quelques lignes plus haut. Le lien est effectué par comparaison de la
valeur prise par ces deux attributs.
Element « compositionactivite ».
<!ELEMENT activite (composition_activite+)>
<!ELEMENT composition_activite EMPTY>
<!ATTLIST composition_activite id_compoact CDATA #REQUIRED
id_famille_kout IDREF #REQUIRED proportion CDATA #REQUIRED>
|
L'élément « composition_activite »
n'inclut pas d'autre élément (EMPTY).
Ses attributs: « id_compoact » de type CDATA; chaque
instanciation de l'élément « composition _activite »
aura une valeur unique pour cet attribut; id_famille_kout de type IDREF est un
pointeur vers l'élément « famille_cout »; proportion
est de type CDATA.
Elément « famillecout ».
<!ELEMENT famille_cout (composition_famille+)>
<!ATTLIST famille_cout
id_famille_cout ID #REQUIRED
nom_famille (fam1_publicite| fam2_bureau| fam3_stock|
fam4_formation_ documentation| fam5_honoraires| fam6_transport|
fam7_outil_production| fam8_telecom ) #REQUIRED>
|
Définissons l'élément « famille_cout
» qui inclut l'élément « composition_famille ».
Ses attributs: « id_famille_cout », de type ID qui assure la relation
avec l'élément
« composition_activite » (ci-dessus) et recevra une
valeur unique à chaque instantiation; « nom_famille » imposant
une liste de choix.
Elément « compositionfamille ».
<!ELEMENT famille_cout (composition_famille+)>
<!ELEMENT composition_famille EMPTY>
<!ATTLIST composition_famille
id_compofam CDATA #REQUIRED
id_pcmn_fam (601300| 606140| 611130| 611150| 611300| 611350|
612000| 612160|
612300|
|
612400|
|
612500| 613250| 613530|
|
613540|
|
615100|
|
615200|
|
615220|
|
616100|
|
616200| 616300| 616400|
|
630210|
|
630220|
|
630231|
|
630232|
|
640100|
|
640200) #REQUIRED
|
|
|
|
proportion_cf CDATA #REQUIRED>
« composition_famille » est l'élément
imbriqué dans « composition_famille ». L'attribut
« id_pcmn_fam » liste les postes pcmn autorisés
par leur code en 6 chiffres, « proportion_cf » de type CDATA
reprendra la part d'intervention de tel poste pcmn dans la composition de
famille.
Elément « chargeindirecte ».
<!ELEMENT charge_indirecte (imputation+)> <!ATTLIST
charge_indirecte
id_chargeindirecte CDATA #REQUIRED montant_htva_total CDATA
#REQUIRED>
|
Nous déclarons l'élément «
charge_indirecte » incluant l'élément « imputation
» dont une ou plusieurs instances sont possibles.
Ses attributs: « id_chargeindirecte » et «
montant_htva_total » tous deux au format CDATA.
Elément « imputation ».
<!ELEMENT charge_indirecte (imputation+)>
<!ELEMENT imputation EMPTY>
<!ATTLIST imputation
id_imputation CDATA #REQUIRED
id_pcmn_imputation (601300| 606140| 611130| 611150| 611300|
611350| 612000|
612160|
|
612300|
|
612400|
|
612500|
|
613250|
|
613530|
|
613540|
|
615100|
|
615200|
|
615220|
|
616100|
|
616200|
|
616300|
|
616400|
|
630210|
|
630220|
|
630231|
|
630232|
|
640100|
|
640200) #REQUIRED
|
montant_htva_impute CDATA #REQUIRED>
L'élément « imputation » incorporé
à « charge_indirecte » a pour attributs « id_imputation
» de type CDATA, pour lequel chaque instanciation recevra une valeur
unique et une liste de choix portant sur les codes pcmn comme
précédemment (la liste est identique) pour l'attribut
« id_pcmn_imputation ».
Elément « pcmn ».
<!ELEMENT pcmn EMPTY>
<!ATTLIST pcmn
id_pcmn (601300| 606140| 611130| 611150| 611300| 611350| 612000|
612160| 612300|
612400|
|
612500|
|
613250|
|
613530|
|
613540|
|
615100|
|
615200|
|
615220|
|
616100|
|
616200|
|
616300|
|
616400|
|
630210|
|
630220|
|
630231|
|
630232|
|
640100|
|
640200)
|
#REQUIRED
intitule
(601300_outillage|606140_frais_transport|611130_location_outillage|
611150_location_vehicule| 611300_entretien_locaux | 611350_entretien_ vehicule|
612000_energie_immeuble| 612160_carburant| 612300_documentation|
612400_imprimes_fourn_bureau| 612500_petit_mat_bureau|
613250_honoraire_comptable| 613530 _assurance_vehicule | 613540_assurance_RC|
615000_frais_deplacement| 615100_frais_representation|
615200_publicite_annonces| 615220 _foires_expositions| 616100_frais_postaux|
616200_telephone| 616300_gsm| 616400_internet| 630210_dot_amort_immeuble|
630220_dot_amort_outil| 630231_dot_amort_mobilier| 630232_dot_amort_matroulant|
640100_dot_taxe_vehicule| 640200_precompte_immobilier) #REQUIRED>
Nous présentons ci-dessous la DTD.
<!ELEMENT ABC (commande+, activite+, famille_cout+,
charge_indirecte+, client+, pcmn+ )>
<!ELEMENT commande (mesurage+)>
<!ATTLIST commande
id_commande CDATA #REQUIRED
id_client (jaeger| cairelli| panerai) #REQUIRED descriptif CDATA
#REQUIRED
chiffre_affaire CDATA #REQUIRED>
<!ELEMENT mesurage EMPTY> <!ATTLIST mesurage
id-mesurage CDATA #REQUIRED
id_activite IDREF #REQUIRED date CDATA #REQUIRED quantite CDATA
#REQUIRED
unite_oeuvre (heure_communication| heure_demarchage|
heure_logistique| kilometre|
heure_production| heure_comptabilite_abc| minute_telecom)
#REQUIRED >
<!ELEMENT charge_directe EMPTY>
<!ATTLIST charge_directe
id_charge_d CDATA #REQUIRED
id_pcmn (601000| 620000) #REQUIRED montant_dir_htva_impute CDATA
#REQUIRED quantite CDATA #REQUIRED>
<!ELEMENT activite (composition_activite+)>
<!ATTLIST activite
id_activite ID #REQUIRED
nom_activite ( act_communication| act_demarchage| act_logistique|
act_transport| act_production | act_comptabilite_abc| act_telecom )
#REQUIRED>
<!ELEMENT composition_activite EMPTY>
<!ATTLIST composition_activite id_compoact CDATA #REQUIRED
id_famille_cout IDREF #REQUIRED proportion CDATA #REQUIRED>
<!ELEMENT famille_cout (composition_famille+)>
<!ATTLIST famille_cout
id_famille_cout ID #REQUIRED
nom_famille (fam_publicite| fam_bureau| fam_stock|
fam_formation_documentation| fam_honoraires| fam_transport|
fam_outil_production| fam_telecom ) #REQUIRED>
<!ELEMENT composition_famille EMPTY>
<!ATTLIST composition_famille
id_fam CDATA #REQUIRED
id_pcmn_fam (601300| 611150| 612000| 612300| 612400| 612500|
613250| 613530| 615200| 616200| 616300) #REQUIRED
proportion_cf CDATA #REQUIRED>
<!ELEMENT charge_indirecte (imputation+)> <!ATTLIST
charge_indirecte
id_chargeindirecte CDATA #REQUIRED montant_htva_total CDATA
#REQUIRED>
<!ELEMENT imputation EMPTY>
<!ATTLIST imputation
id_imputation CDATA #REQUIRED
id_pcmn_imputation (601300| 611150| 612000| 612300| 612400|
612500| 613250| 613530| 615200| 616200| 616300) #REQUIRED
montant_htva_impute CDATA #REQUIRED>
<!ELEMENT client EMPTY>
<!ATTLIST client
id_klient (jaeger| cairelli| panerai) #REQUIRED
adresse CDATA #REQUIRED>
<!ELEMENT pcmn EMPTY>
<!ATTLIST pcmn
id_pcmn (601300| 611150| 612000| 612300| 612400| 612500| 613250|
613530| 615200| 616200| 616300) #REQUIRED
intitule (601300_outillage| 611150_location_vehicule|
612000_energie_immeuble| 6 12300_documentation| 612400_imprimes_fourn_bureau|
612500_petit_mat_bureau| 613250_honoraire_comptable| 613530_assurance_vehicule|
615000_frais_deplacement| 615200_frais_representation|
615200_publicite_annonces| 616200_telephone| 616300_gsm) #REQUIRED
Le document XML.
Nous rédigeons le document XML.
Comme nous l'avons déjà évoqué plus
haut, la DTD doit être respectée scrupuleusement.
Si au lieu de saisir « pcmn », nous saisissons «
pmcn », le parseur décèlera l'erreur qui sera une erreur
bloquante, c'est à dire qu'aucune opération n'est possible tant
qu'il n'y a pas correction.
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE ABC SYSTEM
"/home/jean/Memoireulb/XQ27avril/abc_avril27_id01.dtd">
Des deux premières lignes du document XML , la
première est la déclaration XML qui spécifie quelle est la
version XML utilisée (1.0) et le type d'encodage du document
(ISO-8859-1).
La seconde ligne indique que l'élément racine est
« ABC », et précise où se trouve la DTD dans le
système de fichiers de l'ordinateur.
<ABC>
<client id_client="" nom="" adresse="">
|
L'ensemble des éléments sont inclus dans
l'élément racine <ABC> qui est la première balise
ouverte.
Nous avons ensuite l'élément <client> qui
inclut l'élément <commande> qui inclut les
éléments <mesurage> et <charge_directe>.
La balise </commande> est refermée après
l'élément <charge_directe>, la balise </client> est
refermée après l'élément </commande>.
<ABC>
<client id_client="" nom="" adresse="">
<commande id_commande="" descriptif=""
chiffre_affaire="">
<mesurage id_mesurage="" id_aktivite="" date="" quantite=""
unite_oeuvre=""/>
<charge_directe id_charge_d="" id_pcmn=""
montant_dir_htva_impute="" quantite=""/> </commande>
</client>
|
Au même niveau hiérarchique que
l'élément <client>, l'élément
<activité> qui inclut l'élément
<composition_activite>.
La balise </activite> est refermée après
l'élément </composition_activite>.
<activite id_activite="" nom_activite=""
unite_oeuvre="">
<composition_activite id_compoact="" id_famille_kout=""
proportion=""/> </activite>
|
L'élément <famille_cout> inclut
l'élément <composition_famille>; la balise
</famille_cout> est refermée après l'élément
</composition_famille>.
<famille_cout id_famille_cout="" nom_famille="">
<composition_famille id_compofam="" id_pcmn_fam=""
proportion_cf=""/> </famille_cout>
|
L'élément <charge_indirecte> inclut
l'élément <imputation>, la balise </charge_indirecte>
est
refermée après l'élément
</imputation>.
<charge_indirecte id_chargeindirecte=""
montant_htva_total="">
<imputation id_imputation="" id_pcmn_imputation=""
montant_htva_impute=""/> </charge_indirecte>
|
Enfin, le dernier élément <pcmn> qui est lui
aussi au même niveau hiérarchique que les éléments
<client>, <activité>, <famille_cout> et
<charge_indirecte>.
La balise de l'élément racine </ABC> est
refermée.
<pcmn id_pcmn="" intitule=""/> </ABC>
|
Les données du document XML.
Disposant de la structure du document XML, nous devons y saisir
les données comptables que nous déclarions au premier chapitre,
ainsi que quelques mesurages et autres données client.
Nous distinguons deux types de données au sein du document
XML: - les données relevant de la pratique de l'entreprise
- les données nécessaires à l'analyse
ABC.
La seconde catégorie consistera en une information servant
de base aux calculs ABC. Elle sera accèdée plus rarement en
écriture, et cet accès devrait être idéalement
restreint.
Il est nécessaire de bien comprendre les
conséquences sur les résultats de l'application ABC avant de
procéder à une modification de ces données.
Les données d'analyse ABC.
Ce sont les données des éléments
<activite> et <composition_activite>, <famille_cout> et
<composition_famille>.
Les activités.
Nous y transcrivons activité par activité quelles
familles de coût les composent, et dans quelle proportion.
Cela a été défini dans le chapitre
consacré à la méthode ABC, et synthétisé par
un tableau que nous reproduisons.
|
Act1
|
Act2
|
Act3
|
Act4
|
Act5
|
Act6
|
Act7
|
Fam1
|
1
|
|
|
|
|
|
|
Fam2
|
0,3
|
0,4
|
|
|
|
0,3
|
|
Fam3
|
|
|
1
|
|
|
|
|
Fam4
|
|
0,42
|
|
|
0,34
|
0,24
|
|
Fam5
|
|
|
|
|
|
1
|
|
Fam6
|
|
|
|
1
|
|
|
|
Fam7 0,27 0,73
Fam8
1
Pour le premier élément traitant de
l'activité « communication », les valeurs d'attributs sont:
id_activite: « act1 »
nom_activite: « act1_communication »
(conformément à la liste de choix de la DTD) unité_oeuvre:
« heure_communication » (conformément à la liste de
choix de la DTD)
|
Les valeurs d'attribut des deux éléments
<composition_activite> inclut dans l'élément
<activite> sont:
id_compoact: « compoact001 » id_famille_kout: «
fam1 »
proportion: « 1 »
|
et
id_compoact: « compoact002 » id_famille_kout: «
fam2 »
proportion: « .3 »
|
Ce qui se lit: l'activité1 est composée de la
famille de coûts « fam1 » qui intervient à 100%, et de
la famille de coûts « fam2 » qui intervient à 30% dans
le calcul de sa valeur.
<activite id_activite="act1" nom_activite="act1_communication"
unite_oeuvre="heure_communication">
<composition_activite id_compoact="compoact001"
id_famille_kout="fam1" proportion="1"/>
<composition_activite id_compoact="compoact002"
id_famille_kout="fam2" proportion=".3"/> </activite>
|
Le même raisonnement est valable pour les sept
activités décrites dans le chapitre ABC. Nous reproduisons la
partie du document XML relative aux activités ci-dessous.
<activite id_activite="act1" nom_activite="act1_communication"
unite_oeuvre="heure_communication">
<composition_activite id_compoact="compoact001"
id_famille_kout="fam1" proportion="1"/>
<composition_activite id_compoact="compoact002"
id_famille_kout="fam2" proportion=".3"/> </activite>
<activite id_activite="act2" nom_activite="act2_demarchage"
unite_oeuvre="heure_demarchage">
<composition_activite id_compoact="compoact003"
id_famille_kout="fam2" proportion=".4"/>
<composition_activite id_compoact="compoact004"
id_famille_kout="fam4" proportion=".42"/> </activite>
<activite id_activite="act3" nom_activite="act3_logistique"
unite_oeuvre="article_unitaire"> <composition_activite
id_compoact="compoact005" id_famille_kout="fam3" proportion="1"/>
<composition_activite id_compoact="compoact006" id_famille_kout="fam7"
proportion=".27"/>
</activite>
<activite id_activite="act4" nom_activite="act4_transport"
unite_oeuvre="kilometre">
|
<composition_activite id_compoact="compoact008"
id_famille_kout="fam6" proportion="1"/> </activite>
<activite id_activite="act5" nom_activite="act5_production"
unite_oeuvre="heure_production">
<composition_activite id_compoact="compoact009"
id_famille_kout="fam4" proportion=".34"/>
<composition_activite id_compoact="compoact010"
id_famille_kout="fam7" proportion=".73"/> </activite>
<activite id_activite="act6"
nom_activite="act6_comptabilite_abc"
unite_oeuvre="heure_comptabilite_abc">
<composition_activite id_compoact="compoact011"
id_famille_kout="fam5" proportion="1"/> <composition_activite
id_compoact="compoact012" id_famille_kout="fam2" proportion=".3"/>
<composition_activite id_compoact="compoact013" id_famille_kout="fam4"
proportion=".24"/>
</activite>
<activite id_activite="act7" nom_activite="act7_telecom"
unite_oeuvre="minute_telecom"> <composition_activite
id_compoact="compoact002" id_famille_kout="fam8" proportion="1"/>
</activite>
|
Les familles de coût.
Les familles de coût sont également décrites
dans le chapitre1 dédié à ABC.
Chacune de ces huit familles sont constituées de postes
pcmn qui interviennent dans des proportion parfois différentes.
Le fragment du document XML relatif aux familles de coût se
lit de la même façon que celui cidessus traitant des
activités.
La famille1 est constituée des postes pcmn « 615100
», « 615200 » et « 615220 » qui interviennent chacun
à 100%.
Dans la famille2, nous trouvons le poste pcmn « 611300
» pour 40%, etc..
<famille_cout id_famille_cout="fam1"
nom_famille="fam1_publicite">
<composition_famille id_compofam="compofam01"
id_pcmn_fam="615100" proportion_cf="1"/> <composition_famille
id_compofam="compofam02" id_pcmn_fam="615200"
proportion_cf="1"/> <composition_famille id_compofam="compofam03"
id_pcmn_fam="615220" proportion_cf="1"/>
</famille_cout>
<famille_cout id_famille_cout="fam2"
nom_famille="fam2_bureau">
<composition_famille id_compofam="compofam04"
id_pcmn_fam="611300" proportion_cf=".4"/> <composition_famille
id_compofam="compofam05" id_pcmn_fam="612000" proportion_cf=".4"/>
<composition_famille id_compofam="compofam06" id_pcmn_fam="612400"
proportion_cf="1"/> <composition_famille id_compofam="compofam07"
id_pcmn_fam="612500" proportion_cf="1"/> <composition_famille
id_compofam="compofam08" id_pcmn_fam="616100" proportion_cf="1"/>
<composition_famille id_compofam="compofam09" id_pcmn_fam="630210"
proportion_cf=".4"/> <composition_famille id_compofam="compofam10"
id_pcmn_fam="630231" proportion_cf=".8"/> <composition_famille
id_compofam="compofam30" id_pcmn_fam="640200" proportion_cf=".4"/>
</famille_cout>
<famille_cout id_famille_cout="fam3"
nom_famille="fam3_stock">
<composition_famille id_compofam="compofam11"
id_pcmn_fam="611300" proportion_cf=".6"/> <composition_famille
id_compofam="compofam12" id_pcmn_fam="612000"
proportion_cf=".6"/> <composition_famille id_compofam="compofam13"
id_pcmn_fam="630210" proportion_cf=".6"/>
<composition_famille id_compofam="compofam14"
id_pcmn_fam="630220" proportion_cf=".2"/> <composition_famille
id_compofam="compofam15" id_pcmn_fam="630231"
proportion_cf=".2"/> <composition_famille id_compofam="compofam31"
id_pcmn_fam="640200" proportion_cf=".6"/>
</famille_cout>
<famille_cout id_famille_cout="fam4"
nom_famille="fam4_formation_documentation"> <composition_famille
id_compofam="compofam16" id_pcmn_fam="612300" proportion_cf="1"/>
</famille_cout>
<famille_cout id_famille_cout="fam5"
nom_famille="fam5_honoraires">
<composition_famille id_compofam="compofam17"
id_pcmn_fam="613250" proportion_cf="1"/> </famille_cout>
<famille_cout id_famille_cout="fam6"
nom_famille="fam6_transport">
<composition_famille id_compofam="compofam18"
id_pcmn_fam="606140" proportion_cf="1"/> <composition_famille
id_compofam="compofam19" id_pcmn_fam="611150" proportion_cf="1"/>
<composition_famille id_compofam="compofam20" id_pcmn_fam="611350"
proportion_cf="1"/> <composition_famille id_compofam="compofam21"
id_pcmn_fam="612160" proportion_cf="1"/> <composition_famille
id_compofam="compofam22" id_pcmn_fam="613530" proportion_cf="1"/>
<composition_famille id_compofam="compofam23" id_pcmn_fam="630232"
proportion_cf="1"/> <composition_famille id_compofam="compofam24"
id_pcmn_fam="640100" proportion_cf="1"/>
</famille_cout>
<famille_cout id_famille_cout="fam7"
nom_famille="fam7_outil_production">
<composition_famille id_compofam="compofam25"
id_pcmn_fam="601300" proportion_cf="1"/> <composition_famille
id_compofam="compofam26" id_pcmn_fam="611130" proportion_cf="1"/>
<composition_famille id_compofam="compofam27" id_pcmn_fam="613540"
proportion_cf="1"/> <composition_famille id_compofam="compofam28"
id_pcmn_fam="630220"proportion_cf=".8"/>
</famille_cout>
<famille_cout id_famille_cout="fam8"
nom_famille="fam8_telecom">
<composition_famille id_compofam="compofam29"
id_pcmn_fam="616200" proportion_cf="1"/> <composition_famille
id_compofam="compofam32" id_pcmn_fam="616300"
proportion_cf="1"/> <composition_famille id_compofam="compofam33"
id_pcmn_fam="616400" proportion_cf="1"/>
</famille_cout>
|
Les données d'exercice de l'entreprise.
Ces données concernent les clients, commandes, mesurages
et charges directes et indirectes que nous imputons.
Les clients et commandes.
Nous avons ouvert trois éléments <client>. Le
premier élément <client> a pour attributs:
id_client: « jaeger01 » (conformément à
la liste de choix de la DTD) nom: « jaeger » (conformément
à la liste de choix de la DTD) adresse: « rue du bois 36 1000
bruxelles »
|
Ce client a passé une commande, que nous lisons dans
l'élément <commande> qui est inclu (dans
l'élément <client> que nous venons de
décrire).
<commande
id_commande: « com001 » descriptif: « systeme
solaire » chiffre_affaire= « 12000 »>
|
La lecture est identique pour chaque élément
<client>.
Le id de cette commande est « com001 », son objet
consistera à vendre et placer un systeme solaire, le chiffre d'affaire
en est de 12000 (Euro)
<client id_client="jaeger01" nom="jaeger" adresse="rue du bois
36 à 1000 bruxelles">
<commande id_commande="com001" descriptif="systeme solaire"
chiffre_affaire="12000">
|
<client id_client="cairelli02" nom="cairelli"
adresse="grand-place 1 à 1200 Bruxelles">
<commande id_commande="com002" descriptif="extension
système" chiffre_affaire="2310">
|
<client id_client="panerai03" nom="panerai" adresse="av. des
Arts 2 1200 Bruxelles">
<commande id_commande="com004" descriptif="système
solaire" chiffre_affaire="6400">
|
Les mesurages et charges directes.
Revenons au premier élément <client>.
Nous lui avons attribué deux commandes (deux
éléments <commande> inclus dans les tags
<client>).
Il a ensuite été procédé à des
mesurages d'unités d'oeuvre des activités utilisées.
Dans le document XML, nous avons incorporé à
l'élément <commande> dont l'attribut id_commande est «
com001 », seize éléments <mesurage> pour seize
mesurages réalisés pour cette commande.
La lecture du premier mesurage:
id_mesurage="mes001"
id_aktivite="act2"
date="01 feb 2009"
quantite="4"
unite_oeuvre="heure_demarchage"/>
Le mesurage1 se rapportant à l'activité2 a
été réalisé le 01 février 2009; 4
unités d'oeuvre de type « heure_demarchage » ont
été consommées.
<client id_client="jaeger01" nom="jaeger" adresse="rue du bois
36 à 1000 bruxelles"> <commande id_commande="com001"
descriptif="rediger exemple" chiffre_affaire="12000"> <mesurage
id_mesurage="mes001" id_aktivite="act2" date="01 feb 2009" quantite="4"
unite_oeuvre="heure_demarchage"/>
<mesurage id_mesurage="mes002" id_aktivite="act7" date="01 feb
2009" quantite="23" unite_oeuvre="minute_telecom"/>
<mesurage id_mesurage="mes003" id_aktivite="act4" date="01 feb
2009" quantite="42" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes004" id_aktivite="act5" date="15 feb
2009" quantite="8" unite_oeuvre="heure_production"/>
|
<mesurage id_mesurage="mes005" id_aktivite="act4" date="01 feb
2009" quantite="40" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes006" id_aktivite="act3" date="13 feb
2009" quantite="24" unite_oeuvre="article_unitaire"/>
<mesurage id_mesurage="mes007" id_aktivite="act4" date="01 feb
2009" quantite="22" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes008" id_aktivite="act5" date="16 feb
2009" quantite="8.5" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes009" id_aktivite="act4" date="01 feb
2009" quantite="38" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes010" id_aktivite="act5" date="15 feb
2009" quantite="6" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes011" id_aktivite="act4" date="01 feb
2009" quantite="40" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes012" id_aktivite="act5" date="15 feb
2009" quantite="10" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes013" id_aktivite="act3" date="13 feb
2009" quantite="11" unite_oeuvre="article_unitaire"/>
<mesurage id_mesurage="mes014" id_aktivite="act2" date="01 feb
2009" quantite="1.5" unite_oeuvre="heure_demarchage"/>
<mesurage id_mesurage="mes015" id_aktivite="act6" date="01 feb
2009" quantite="1.5" unite_oeuvre="heure_comptabilite_abc"/>
<mesurage id_mesurage="mes016" id_aktivite="act7" date="01 feb
2009" quantite="51" unite_oeuvre="minute_telecom"/>
<charge_directe id_charge_d="fact0020" id_pcmn="601000"
montant_dir_htva_impute="4756"
quantite="1"/>
<charge_directe id_charge_d="fact0023" id_pcmn="601000"
montant_dir_htva_impute="322"
quantite="1"/>
<charge_directe id_charge_d="fact9999" id_pcmn="620000"
montant_dir_htva_impute="25"
quantite="32.5"/>
</commande>
<commande id_commande="com003" descriptif="seconde commande"
chiffre_affaire="1852"> <mesurage id_mesurage="mes022" id_aktivite="act4"
date="12 avril 2009" quantite="42" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes023" id_aktivite="act5" date="12
avril 2009" quantite="2" unite_oeuvre="heure_production"/>
<charge_directe id_charge_d="fact0041" id_pcmn="601000"
montant_dir_htva_impute="640" quantite="1"/>
<charge_directe id_charge_d="fact9999" id_pcmn="620000"
montant_dir_htva_impute="25" quantite="2"/> </commande>
</client>
<client id_client="cairelli02" nom="cairelli"
adresse="grand-place 1 à 1200 Bruxelles"> <commande
id_commande="com002" descriptif="production exemple" chiffre_affaire="2310">
<mesurage id_mesurage="mes017" id_aktivite="act4" date="25 mars 2009"
quantite="12" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes018" id_aktivite="act5" date="25
mars 2009" quantite="8" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes019" id_aktivite="act4" date="28
mars 2009" quantite="20" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes020" id_aktivite="act5" date="28
mars 2009" quantite="7.25" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes021" id_aktivite="act6" date="02
avril 2009" quantite=".5" unite_oeuvre="heure_comptabilite_abc"/>
<charge_directe id_charge_d="fact0005" id_pcmn="601000"
montant_dir_htva_impute="801" quantite="1"/>
<charge_directe id_charge_d="fact9999" id_pcmn="620000"
montant_dir_htva_impute="25" quantite="15.25"/>
</commande>
</client>
<client id_client="panerai03" nom="panerai" adresse="av. des
Arts 2 1200 Bruxelles"> <commande id_commande="com004"
descriptif="système solaire" chiffre_affaire="6400"> <mesurage
id_mesurage="mes024" id_aktivite="act2" date="06 mars 2009" quantite="2.5"
unite_oeuvre="heure_communication"/>
<mesurage id_mesurage="mes025" id_aktivite="act4" date="06
mars 2009" quantite="61" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes026" id_aktivite="act5" date="28
mars 2009" quantite="10" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes027" id_aktivite="act3" date="13 feb
2009" quantite="14" unite_oeuvre="article_unitaire"/>
<mesurage id_mesurage="mes028" id_aktivite="act4" date="06
mars 2009" quantite="17" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes029" id_aktivite="act3" date="13 feb
2009" quantite="04" unite_oeuvre="article_unitaire"/>
<mesurage id_mesurage="mes030" id_aktivite="act4" date="06
mars 2009" quantite="85" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes031" id_aktivite="act5" date="28
mars 2009" quantite="7" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes032" id_aktivite="act4" date="06
mars 2009" quantite="64" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes033" id_aktivite="act5" date="28
mars 2009" quantite="9" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes034" id_aktivite="act7" date="26
mars 2009" quantite="41" unite_oeuvre="minute_telecom"/>
<mesurage id_mesurage="mes035" id_aktivite="act6" date="26
mars 2009" quantite="1" unite_oeuvre="heure_comptabilite_abc"/>
<charge_directe id_charge_d="fact0018" id_pcmn="601000"
montant_dir_htva_impute="3406" quantite="1"/>
<charge_directe id_charge_d="fact0030" id_pcmn="601000"
montant_dir_htva_impute="604" quantite="1"/>
<charge_directe id_charge_d="fact9999" id_pcmn="620000"
montant_dir_htva_impute="25" quantite="26"/>
</commande>
</client>
|
Toujours dans le cadre de notre premier élément
<client>, à la suite des éléments <mesurage>,
nous créons trois éléments <charge_directe>
<client id_client="jaeger01" nom="jaeger" adresse="rue du bois
36 à 1000 bruxelles"> <commande id_commande="com001"
descriptif="rediger exemple">
<mesurage id_mesurage="mes001" id_aktivite="act2" date="01
feb 2009" quantite="4"
<mesurage id_mesurage="mes013" id_aktivite="act3" date="13 feb
2009" quantite="11"
|
unite_oeuvre="article_unitaire"/>
<mesurage id_mesurage="mes014" id_aktivite="act2" date="01 feb
2009" quantite="1.5" unite_oeuvre="heure_demarchage"/>
<mesurage id_mesurage="mes015" id_aktivite="act6" date="01 feb
2009" quantite="1.5" unite_oeuvre="heure_comptabilite_abc"/>
<mesurage id_mesurage="mes016" id_aktivite="act7" date="01 feb
2009" quantite="51" unite_oeuvre="minute_telecom"/>
<charge_directe id_charge_d="fact0020" id_pcmn="601000"
montant_dir_htva_impute="4756" quantite="1"/>
<charge_directe id_charge_d="fact0023" id_pcmn="601000"
montant_dir_htva_impute="322" quantite="1"/>
<charge_directe id_charge_d="fact9999" id_pcmn="620000"
montant_dir_htva_impute="25" quantite="32.5"/>
</commande>
|
La lecture du dernier élément « charge_directe
» est: la charge directe dont le id est « fact9999 » a
été imputée sous le numéro pcmn 620000; le montant
imputé est de 25 (Euro), la quantité 32,5 (unités).
Trois charges directes sont imputées à cette
commande
- des achats de fournitures pour un montant de 4756 (Euro), et
322 (Euro).
- des heures de production, dont la quantité de 32,5
heures correspond aux mesurages de
« production » de la commande. Le montant de 25 (Euro)
par heure est une valeur fournie par l'utilisateur.
Les charges indirectes.
Cette partie du document XML concerne les charges indirectes et
la méthode selon laquelle nous les imputons.
Précisions.
Une même pièce comptable peut contenir des charges
directes et indirectes, et les charges indirectes d'une même pièce
comptable peuvent être incorporées dans différents postes
pcmn.
L'attribut « id_chargeindirecte » prendra la même
valeur que dans la comptabilité générale. Autrement dit,
si la pièce comptable porte dans la comptabilité
générale le numéro 001, la même valeur sera
appliquée pour l'attribut « id_chargeindirecte » : «
fact001 ».
Nous ouvrons un élément <charge_indirecte>
pour chaque pièce comptable comportant une charge indirecte.
Pour chaque imputation de cette pièce comptable, nous
ouvrons un élément <imputation>, inclu dans
l'élément <charge_indirecte>.
<charge_indirecte id_chargeindirecte="fact001"
montant_htva_total="2000">
<imputation id_imputation="imp0001"
id_pcmn_imputation="601300" montant_htva_impute="850"/> <imputation
id_imputation="imp0002" id_pcmn_imputation="611300"
montant_htva_impute="1150"/> </charge_indirecte>
|
Examinons le premier élément
<charge_indirecte> de ce fragment du document XML:
id_chargeindirecte="fact001" montant_htva_total="2000"
|
y sont inclus deux éléments <imputation>:
id_imputation="imp0001" id_pcmn_imputation="601300"
montant_htva_impute="850 »
|
et
imputation id_imputation="imp0002" id_pcmn_imputation="611300"
montant_htva_impute="1150"
|
La lecture en est: la facture fact001 dont le montant total
hors TVA est de 2000 (Euro), est imputée en deux fois, dans le poste
pcmn 601300 pour un montant hors TVA de 850 (Euro), et dans le poste pcmn
611300 pour un montant hors TVA de 1150 (Euro).
<charge_indirecte id_chargeindirecte="fact005"
montant_htva_total="2401">
<imputation id_imputation="imp0003"
id_pcmn_imputation="615200" montant_htva_impute="1600"/>
</charge_indirecte>
|
La lecture de ce second élément: la facture fact005
dont le montant total hors TVA est de 2401(Euro) est imputée dans le
poste pcmn 615200 pour un montant hors TVA de 1600 (Euro). Cette facture
comportait une charge directe pour un montant hors TVA de 801 (Euro), que nous
avons imputé dans la commande « com002 » en charge_directe.
La lecture de tous les éléments
<charge_indirecte> dans le fragment de document XML ci-dessous est
identique.
<charge_indirecte id_chargeindirecte="fact001"
montant_htva_total="2000">
<imputation id_imputation="imp0001"
id_pcmn_imputation="601300" montant_htva_impute="850"/> <imputation
id_imputation="imp0002" id_pcmn_imputation="611300"
montant_htva_impute="1150"/> </charge_indirecte>
<charge_indirecte id_chargeindirecte="fact005"
montant_htva_total="2401">
<imputation id_imputation="imp0003"
id_pcmn_imputation="615200" montant_htva_impute="1600"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact011"
montant_htva_total="710">
<imputation id_imputation="imp0004"
id_pcmn_imputation="615100"montant_htva_impute="710.2"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact015"
montant_htva_total="623.85">
<imputation id_imputation="imp0005"
id_pcmn_imputation="612400" montant_htva_impute="466"/> <imputation
id_imputation="imp0006" id_pcmn_imputation="612300"
montant_htva_impute="157.85"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact016"
montant_htva_total="310">
<imputation id_imputation="imp0007"
id_pcmn_imputation="612160" montant_htva_impute="310"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact028"
montant_htva_total="4562">
<imputation id_imputation="imp0008"
id_pcmn_imputation="630232" montant_htva_impute="4562"/>
</charge_indirecte>
|
<charge_indirecte id_chargeindirecte="fact031"
montant_htva_total="2100">
<imputation id_imputation="imp0009"
id_pcmn_imputation="630220" montant_htva_impute="2100"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact032"
montant_htva_total="2542">
<imputation id_imputation="imp0010"
id_pcmn_imputation="630210" montant_htva_impute="2542"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact054"
montant_htva_total="600">
<imputation id_imputation="imp0011"
id_pcmn_imputation="613250" montant_htva_impute="600"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact055"
montant_htva_total="240">
<imputation id_imputation="imp0012"
id_pcmn_imputation="612000" montant_htva_impute="240"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact056"
montant_htva_total="211">
<imputation id_imputation="imp0013"
id_pcmn_imputation="612160" montant_htva_impute="211"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact062"
montant_htva_total="118.7">
<imputation id_imputation="imp0014"
id_pcmn_imputation="616200"
montant_htva_impute="118.7"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact071"
montant_htva_total="560">
<imputation id_imputation="imp0015"
id_pcmn_imputation="612300" montant_htva_impute="560"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact072"
montant_htva_total="422">
<imputation id_imputation="imp0016"
id_pcmn_imputation="611130" montant_htva_impute="422"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact075"
montant_htva_total="58">
<imputation id_imputation="imp0017"
id_pcmn_imputation="616300" montant_htva_impute="58"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact100"
montant_htva_total="74.6">
<imputation id_imputation="imp0018"
id_pcmn_imputation="616300" montant_htva_impute="74.6"/>
</charge_indirecte>
|
La dernière partie du document XML concerne
l'élément <pcmn> Nous avons créé ceux qui
sont autorisés par la DTD.
<pcmn id_pcmn="601300" intitule="601300_outillage"/>
<pcmn id_pcmn="611350"
intitule="611350_entretien_vehicule"/> <pcmn id_pcmn="612160"
intitule="612160_carburant"/>
<pcmn id_pcmn="612300" intitule="612300_documentation"/>
<pcmn id_pcmn="612400"
intitule="612400_imprimes_fourn_bureau"/> <pcmn id_pcmn="613250"
intitule="613250_honoraire_comptable"/> <pcmn id_pcmn="611130"
intitule="611130_location_outillage"/> <pcmn id_pcmn="611150"
intitule="611150_location_vehicule"/> <pcmn id_pcmn="611300"
intitule="611300_entretien_locaux"/>
<pcmn id_pcmn="612500" intitule="612500_petit_mat_bureau"/>
<pcmn id_pcmn="613530" intitule="613530_assurance_vehicule"/> <pcmn
id_pcmn="613540" intitule="613540_assurance_RC"/> <pcmn id_pcmn="615000"
intitule="615000_frais_deplacement"/> <pcmn id_pcmn="615100"
intitule="615100_frais_representation"/> <pcmn id_pcmn="615200"
intitule="615200_publicite_annonces"/> <pcmn id_pcmn="615220"
intitule="615220_foires_expositions"/> <pcmn id_pcmn="616100"
intitule="616100_frais_postaux"/> <pcmn id_pcmn="616200"
intitule="616200_telephone"/>
<pcmn id_pcmn="616300" intitule="616300_gsm"/>
<pcmn id_pcmn="616400" intitule="616400_internet"/>
<pcmn id_pcmn="630210"
intitule="630210_dot_amort_immeuble"/> <pcmn id_pcmn="630220"
intitule="630220_dot_amort_outil"/>
|
<pcmn id_pcmn="630231"
intitule="630231_dot_amort_mobilier"/> <pcmn id_pcmn="612000"
intitule="612000_eau_gaz_elec"/>
<pcmn id_pcmn="630232"
intitule="630232_dot_amort_matroulant"/> <pcmn id_pcmn="640100"
intitule="640100_dot_taxe_vehicule"/> <pcmn id_pcmn="640200"
intitule="640200_precompte_immobilier"/> </ABC>
|
La lecture du dernier élément « pcmn »
est: le poste dont le id_pcmn est 640200 est intitulé 640200 precompte
immobilier. La lecture est identique pour les éléments
précédents.
Enfin, le document XML est fermé par la balise
clôturant l'élément racine: </ABC>
Le document ABC/XML entier.
Nous reproduisons ci-dessous l'entièreté du
document XML.
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE ABC SYSTEM
"/home/jean/Memoireulb/XQ27avril/abc_avril27_id01.dtd">
<ABC>
<client id_client="jaeger01" nom="jaeger" adresse="rue du bois
36 à 1000 bruxelles">
<commande id_commande="com001" descriptif="systeme solaire"
chiffre_affaire="12000">
<mesurage id_mesurage="mes001" id_aktivite="act2" date="01 feb
2009" quantite="4" unite_oeuvre="heure_demarchage"/>
<mesurage id_mesurage="mes002" id_aktivite="act7" date="01 feb
2009" quantite="23" unite_oeuvre="minute_telecom"/>
<mesurage id_mesurage="mes003" id_aktivite="act4" date="01 feb
2009" quantite="42" unite_oeuvre="kilometre"/> <mesurage
id_mesurage="mes004" id_aktivite="act5" date="15 feb 2009" quantite="8"
unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes005" id_aktivite="act4" date="01 feb
2009" quantite="40" unite_oeuvre="kilometre"/> <mesurage
id_mesurage="mes006" id_aktivite="act3" date="13 feb 2009" quantite="24"
unite_oeuvre="article_unitaire"/>
<mesurage id_mesurage="mes007" id_aktivite="act4" date="01 feb
2009" quantite="22" unite_oeuvre="kilometre"/> <mesurage
id_mesurage="mes008" id_aktivite="act5" date="16 feb 2009" quantite="8.5"
unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes009" id_aktivite="act4" date="01 feb
2009" quantite="38" unite_oeuvre="kilometre"/> <mesurage
id_mesurage="mes010" id_aktivite="act5" date="15 feb 2009" quantite="6"
unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes011" id_aktivite="act4" date="01 feb
2009" quantite="40" unite_oeuvre="kilometre"/> <mesurage
id_mesurage="mes012" id_aktivite="act5" date="15 feb 2009" quantite="10"
unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes013" id_aktivite="act3" date="13 feb
2009" quantite="11" unite_oeuvre="article_unitaire"/>
<mesurage id_mesurage="mes014" id_aktivite="act2" date="01 feb
2009" quantite="1.5" unite_oeuvre="heure_demarchage"/>
<mesurage id_mesurage="mes015" id_aktivite="act6" date="01 feb
2009" quantite="1.5" unite_oeuvre="heure_comptabilite_abc"/>
<mesurage id_mesurage="mes016" id_aktivite="act7" date="01 feb
2009" quantite="51" unite_oeuvre="minute_telecom"/>
<charge_directe id_charge_d="fact0020" id_pcmn="601000"
montant_dir_htva_impute="4756" quantite="1"/> <charge_directe
id_charge_d="fact0023" id_pcmn="601000" montant_dir_htva_impute="322"
quantite="1"/> <charge_directe id_charge_d="fact9999" id_pcmn="620000"
montant_dir_htva_impute="25" quantite="32.5"/> </commande>
<commande id_commande="com003" descriptif="seconde commande"
chiffre_affaire="1852"> <mesurage id_mesurage="mes022" id_aktivite="act4"
date="12 avril 2009" quantite="42" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes023" id_aktivite="act5" date="12
avril 2009" quantite="2" unite_oeuvre="heure_production"/>
<charge_directe id_charge_d="fact0041" id_pcmn="601000"
montant_dir_htva_impute="640" quantite="1"/> <charge_directe
id_charge_d="fact9999" id_pcmn="620000" montant_dir_htva_impute="25"
quantite="2"/> </commande>
</client>
<client id_client="cairelli02" nom="cairelli"
adresse="grand-place 1 à 1200 Bruxelles"> <commande
id_commande="com002" descriptif="extension système"
chiffre_affaire="2310"> <mesurage id_mesurage="mes017" id_aktivite="act4"
date="25 mars 2009" quantite="12"
unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes018" id_aktivite="act5" date="25
mars 2009" quantite="8" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes019" id_aktivite="act4" date="28
mars 2009" quantite="20" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes020" id_aktivite="act5" date="28
mars 2009" quantite="7.25" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes021" id_aktivite="act6" date="02
avril 2009" quantite=".5" unite_oeuvre="heure_comptabilite_abc"/>
<charge_directe id_charge_d="fact0005" id_pcmn="601000"
montant_dir_htva_impute="801" quantite="1"/> <charge_directe
id_charge_d="fact9999" id_pcmn="620000" montant_dir_htva_impute="25"
quantite="15.25"/> </commande>
</client>
<client id_client="panerai03" nom="panerai" adresse="av. des
Arts 2 1200 Bruxelles"> <commande id_commande="com004"
descriptif="système solaire" chiffre_affaire="6400"> <mesurage
id_mesurage="mes024" id_aktivite="act2" date="06 mars 2009" quantite="2.5"
unite_oeuvre="heure_communication"/>
<mesurage id_mesurage="mes025" id_aktivite="act4" date="06
mars 2009" quantite="61" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes026" id_aktivite="act5" date="28
mars 2009" quantite="10" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes027" id_aktivite="act3" date="13 feb
2009" quantite="14" unite_oeuvre="article_unitaire"/>
<mesurage id_mesurage="mes028" id_aktivite="act4" date="06
mars 2009" quantite="17" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes029" id_aktivite="act3" date="13 feb
2009" quantite="04" unite_oeuvre="article_unitaire"/>
<mesurage id_mesurage="mes030" id_aktivite="act4" date="06
mars 2009" quantite="85" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes031" id_aktivite="act5" date="28
mars 2009" quantite="7" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes032" id_aktivite="act4" date="06
mars 2009" quantite="64" unite_oeuvre="kilometre"/>
<mesurage id_mesurage="mes033" id_aktivite="act5" date="28
mars 2009" quantite="9" unite_oeuvre="heure_production"/>
<mesurage id_mesurage="mes034" id_aktivite="act7" date="26
mars 2009" quantite="41" unite_oeuvre="minute_telecom"/>
<mesurage id_mesurage="mes035" id_aktivite="act6" date="26
mars 2009" quantite="1" unite_oeuvre="heure_comptabilite_abc"/>
<charge_directe id_charge_d="fact0018" id_pcmn="601000"
montant_dir_htva_impute="3406" quantite="1"/> <charge_directe
id_charge_d="fact0030" id_pcmn="601000" montant_dir_htva_impute="604"
quantite="1"/> <charge_directe id_charge_d="fact9999" id_pcmn="620000"
montant_dir_htva_impute="25" quantite="26"/> </commande>
</client>
</client>
<activite id_activite="act1" nom_activite="act1_communication"
unite_oeuvre="heure_communication"> <composition_activite
id_compoact="compoact001" id_famille_kout="fam1" proportion="1"/>
<composition_activite id_compoact="compoact002"
id_famille_kout="fam2" proportion=".3"/> </activite>
<activite id_activite="act2" nom_activite="act2_demarchage"
unite_oeuvre="heure_demarchage">
<composition_activite id_compoact="compoact003"
id_famille_kout="fam2" proportion=".4"/>
<composition_activite id_compoact="compoact004"
id_famille_kout="fam4" proportion=".42"/> </activite>
<activite id_activite="act3" nom_activite="act3_logistique"
unite_oeuvre="article_unitaire">
<composition_activite id_compoact="compoact005"
id_famille_kout="fam3" proportion="1"/>
<composition_activite id_compoact="compoact006"
id_famille_kout="fam7" proportion=".27"/> </activite>
<activite id_activite="act4" nom_activite="act4_transport"
unite_oeuvre="kilometre"> <composition_activite id_compoact="compoact008"
id_famille_kout="fam6" proportion="1"/> </activite>
<activite id_activite="act5" nom_activite="act5_production"
unite_oeuvre="heure_production">
<composition_activite id_compoact="compoact009"
id_famille_kout="fam4" proportion=".34"/>
<composition_activite id_compoact="compoact010"
id_famille_kout="fam7" proportion=".73"/> </activite>
<activite id_activite="act6"
nom_activite="act6_comptabilite_abc" unite_oeuvre="heure_comptabilite_abc">
<composition_activite id_compoact="compoact011" id_famille_kout="fam5"
proportion="1"/> <composition_activite id_compoact="compoact012"
id_famille_kout="fam2" proportion=".3"/> <composition_activite
id_compoact="compoact013" id_famille_kout="fam4" proportion=".24"/>
</activite>
<activite id_activite="act7" nom_activite="act7_telecom"
unite_oeuvre="minute_telecom"> <composition_activite
id_compoact="compoact002" id_famille_kout="fam8" proportion="1"/>
</activite>
<famille_cout id_famille_cout="fam1"
nom_famille="fam1_publicite">
<composition_famille id_compofam="compofam01"
id_pcmn_fam="615100" proportion_cf="1"/> <composition_famille
id_compofam="compofam02" id_pcmn_fam="615200"
proportion_cf="1"/> <composition_famille id_compofam="compofam03"
id_pcmn_fam="615220" proportion_cf="1"/>
</famille_cout>
<famille_cout id_famille_cout="fam2"
nom_famille="fam2_bureau">
<composition_famille id_compofam="compofam04"
id_pcmn_fam="611300" proportion_cf=".4"/> <composition_famille
id_compofam="compofam05" id_pcmn_fam="612000" proportion_cf=".4"/>
<composition_famille id_compofam="compofam06" id_pcmn_fam="612400"
proportion_cf="1"/> <composition_famille id_compofam="compofam07"
id_pcmn_fam="612500" proportion_cf="1"/> <composition_famille
id_compofam="compofam08" id_pcmn_fam="616100" proportion_cf="1"/>
<composition_famille id_compofam="compofam09" id_pcmn_fam="630210"
proportion_cf=".4"/> <composition_famille id_compofam="compofam10"
id_pcmn_fam="630231" proportion_cf=".8"/> <composition_famille
id_compofam="compofam30" id_pcmn_fam="640200" proportion_cf=".4"/>
</famille_cout>
<famille_cout id_famille_cout="fam3"
nom_famille="fam3_stock">
<composition_famille id_compofam="compofam11"
id_pcmn_fam="611300" proportion_cf=".6"/> <composition_famille
id_compofam="compofam12" id_pcmn_fam="612000" proportion_cf=".6"/>
<composition_famille id_compofam="compofam13" id_pcmn_fam="630210"
proportion_cf=".6"/> <composition_famille id_compofam="compofam14"
id_pcmn_fam="630220" proportion_cf=".2"/> <composition_famille
id_compofam="compofam15" id_pcmn_fam="630231" proportion_cf=".2"/>
<composition_famille id_compofam="compofam31" id_pcmn_fam="640200"
proportion_cf=".6"/>
</famille_cout>
<famille_cout id_famille_cout="fam4"
nom_famille="fam4_formation_documentation"> <composition_famille
id_compofam="compofam16" id_pcmn_fam="612300" proportion_cf="1"/>
</famille_cout>
<famille_cout id_famille_cout="fam5"
nom_famille="fam5_honoraires">
<composition_famille id_compofam="compofam17"
id_pcmn_fam="613250" proportion_cf="1"/> </famille_cout>
<famille_cout id_famille_cout="fam6"
nom_famille="fam6_transport">
<composition_famille id_compofam="compofam18"
id_pcmn_fam="606140" proportion_cf="1"/> <composition_famille
id_compofam="compofam19" id_pcmn_fam="611150" proportion_cf="1"/>
<composition_famille id_compofam="compofam20" id_pcmn_fam="611350"
proportion_cf="1"/> <composition_famille id_compofam="compofam21"
id_pcmn_fam="612160" proportion_cf="1"/> <composition_famille
id_compofam="compofam22" id_pcmn_fam="613530" proportion_cf="1"/>
<composition_famille id_compofam="compofam23" id_pcmn_fam="630232"
proportion_cf="1"/> <composition_famille id_compofam="compofam24"
id_pcmn_fam="640100" proportion_cf="1"/>
</famille_cout>
<famille_cout id_famille_cout="fam7"
nom_famille="fam7_outil_production">
<composition_famille id_compofam="compofam25"
id_pcmn_fam="601300" proportion_cf="1"/> <composition_famille
id_compofam="compofam26" id_pcmn_fam="611130" proportion_cf="1"/>
<composition_famille id_compofam="compofam27" id_pcmn_fam="613540"
proportion_cf="1"/> <composition_famille id_compofam="compofam28"
id_pcmn_fam="630220" proportion_cf=".8"/>
</famille_cout>
<famille_cout id_famille_cout="fam8"
nom_famille="fam8_telecom">
<composition_famille id_compofam="compofam29"
id_pcmn_fam="616200" proportion_cf="1"/> <composition_famille
id_compofam="compofam32" id_pcmn_fam="616300"
proportion_cf="1"/> <composition_famille id_compofam="compofam33"
id_pcmn_fam="616400" proportion_cf="1"/>
</famille_cout>
<charge_indirecte id_chargeindirecte="fact001"
montant_htva_total="2000">
<imputation id_imputation="imp0001"
id_pcmn_imputation="601300" montant_htva_impute="850"/>
<imputation id_imputation="imp0002"
id_pcmn_imputation="611300" montant_htva_impute="1150"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact005"
montant_htva_total="2401">
<imputation id_imputation="imp0003"
id_pcmn_imputation="615200" montant_htva_impute="1600"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact011"
montant_htva_total="710">
<imputation id_imputation="imp0004"
id_pcmn_imputation="615100" montant_htva_impute="710.2"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact015"
montant_htva_total="623.85">
<imputation id_imputation="imp0005"
id_pcmn_imputation="612400" montant_htva_impute="466"/>
<imputation id_imputation="imp0006"
id_pcmn_imputation="612300" montant_htva_impute="157.85"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact016"
montant_htva_total="310">
<imputation id_imputation="imp0007"
id_pcmn_imputation="612160" montant_htva_impute="310"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact028"
montant_htva_total="4562">
<imputation id_imputation="imp0008"
id_pcmn_imputation="630232" montant_htva_impute="4562"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact031"
montant_htva_total="2100">
<imputation id_imputation="imp0009"
id_pcmn_imputation="630220" montant_htva_impute="2100"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact032"
montant_htva_total="2542">
<imputation id_imputation="imp0010"
id_pcmn_imputation="630210" montant_htva_impute="2542"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact054"
montant_htva_total="600">
<imputation id_imputation="imp0011"
id_pcmn_imputation="613250" montant_htva_impute="600"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact055"
montant_htva_total="240">
<imputation id_imputation="imp0012"
id_pcmn_imputation="612000" montant_htva_impute="240"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact056"
montant_htva_total="211">
<imputation id_imputation="imp0013"
id_pcmn_imputation="612160" montant_htva_impute="211"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact062"
montant_htva_total="118.7">
<imputation id_imputation="imp0014"
id_pcmn_imputation="616200" montant_htva_impute="118.7"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact071"
montant_htva_total="560">
<imputation id_imputation="imp0015"
id_pcmn_imputation="612300" montant_htva_impute="560"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact072"
montant_htva_total="422">
<imputation id_imputation="imp0016"
id_pcmn_imputation="611130" montant_htva_impute="422"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact075"
montant_htva_total="58">
<imputation id_imputation="imp0017"
id_pcmn_imputation="616300" montant_htva_impute="58"/>
</charge_indirecte>
<charge_indirecte id_chargeindirecte="fact100"
montant_htva_total="74.6">
<imputation id_imputation="imp0018"
id_pcmn_imputation="616300" montant_htva_impute="74.6"/>
</charge_indirecte>
<pcmn id_pcmn="601000"
intitule="601000_achat_fournitures"/>
<pcmn id_pcmn="601300" intitule="601300_outillage"/>
<pcmn id_pcmn="611350"
intitule="611350_entretien_vehicule"/>
<pcmn id_pcmn="612160" intitule="612160_carburant"/>
<pcmn id_pcmn="612300" intitule="612300_documentation"/>
<pcmn id_pcmn="612400"
intitule="612400_imprimes_fourn_bureau"/>
<pcmn id_pcmn="613250"
intitule="613250_honoraire_comptable"/>
<pcmn id_pcmn="611130"
intitule="611130_location_outillage"/>
<pcmn id_pcmn="611150"
intitule="611150_location_vehicule"/>
<pcmn id_pcmn="611300"
intitule="611300_entretien_locaux"/>
<pcmn id_pcmn="612500"
intitule="612500_petit_mat_bureau"/>
<pcmn id_pcmn="613530"
intitule="613530_assurance_vehicule"/>
<pcmn id_pcmn="613540" intitule="613540_assurance_RC"/>
<pcmn id_pcmn="615000"
intitule="615000_frais_deplacement"/>
<pcmn id_pcmn="615100"
intitule="615100_frais_representation"/>
<pcmn id_pcmn="615200"
intitule="615200_publicite_annonces"/>
<pcmn id_pcmn="615220"
intitule="615220_foires_expositions"/>
<pcmn id_pcmn="616100" intitule="616100_frais_postaux"/>
<pcmn id_pcmn="616200" intitule="616200_telephone"/>
<pcmn id_pcmn="616300" intitule="616300_gsm"/>
<pcmn id_pcmn="616400" intitule="616400_internet"/>
<pcmn id_pcmn="620000" intitule="620000_remuneration"/>
<pcmn id_pcmn="630210"
intitule="630210_dot_amort_immeuble"/>
<pcmn id_pcmn="630220"
intitule="630220_dot_amort_outil"/>
<pcmn id_pcmn="630231"
intitule="630231_dot_amort_mobilier"/>
<pcmn id_pcmn="612000" intitule="612000_eau_gaz_elec"/>
<pcmn id_pcmn="630232"
intitule="630232_dot_amort_matroulant"/>
<pcmn id_pcmn="640100"
intitule="640100_dot_taxe_vehicule"/>
<pcmn id_pcmn="640200"
intitule="640200_precompte_immobilier"/>
</ABC>
|
|