Aller directement à la fin des métadonnées
Aller au début des métadonnées

Vous regardez une version antérieure (v. /wiki/spaces/PAI/pages/10796892340/Exemple+de+g+n+ration+d+une+dition+factur-x) de cette page.

afficher les différences afficher l'historique de la page

Vous regardez la version actuelle de cette page. (v. 1) afficher la version suivante »

Voici un exemple qui reprend les modules expliqués précédemment, illustrant la génération d’une édition au format factur-x

module "yfacturX.dhop"  ;chargement des modules
module "ymapi.dhop"

;on genère une edition FACTURX 
procedure ExempleImpression
1	err	x  = 0
1	txterr	4096= " " 
1  errl		L
1 fichierxml  260
1 fichierimp  260
1 fichierpdf  260
beginp
	XharviewBeginFileJoint  ;<- force le mode generer un xharview en interne
	XharviewNoRunXharview	;mais sans toucher a l'etat de la coche avec ou	sans apercu

	PrintBegin
	xmiprint  harmony.imasque  1  ; les xmiprint du masque etc 

	XharviewWriteParameter("<name>aaafacture_Nebout_125e_du_09_12_2020")	 ;<- 'nom' de l'edition , si on génére un pdf le nom du fichier 
																			;sera celui la (attention pas de blanc)
	fichierxml = GenererLeFichierXML ;on génére le fichier xml factur-x
	if fichierxml <> " "
		err = MetaDataFileFacturx(left(fichierxml))					;FACTURX on ajoute apres création le fichier factur-x xml attention au format windows 
		if err <> 0 															;FACTURX la fc fait un open pour vérifier que le fichier existe 
			err  = MetaDataGetLastError(txterr)
		endif
	endif
	MetaDataModele("BASIC") 											;FACTURX par défaut je prend toujours BASIC par defaut modele XRECHNUNG le fichier doit etre xrechnung.xml
	MetaDataTitle("facture_Nebout_125e_du_12/08/2021") 		;FACTURX titre, sinon le prend le nom du fichier 
	MetaDataSubject("facture client Nebout de 125 euro pour livres du 12/08/2021") ;FACTURX le sujet sinon le prend le nom du fichier 
	MetaDataKeywords("facture Nebout livres") 					;FACTURX mot cles pour la recherche dans les metadatas, sinon je met le nom du fichier 
	PrintEnd    

	XharviewGetFileXharview(fichierimp) ;on recupere le fichier
	if fichierimp <> " "	and err <> 0 					;cas en erreur , fichier = " " , exemple disque plein !!!
		fichierpdf = filenamebase(fichierimp) & "\facture_Nebout" & time(7) & ".pdf" 
		MapiConvertPDF(fichierimp,fichierpdf)
	endif
	XharviewEndFileJoint   ;continue l'execution du PrintEnd , ce qui n'a pas ete 
	XharviewRunXharview

	if fichierxml <> " "
		fdeletefile(left(fichierxml),errl,false)		;FACTURX on peut supprimer le fichier XML QUE APRES LE PRINTEND pas avant !
	endif
	if fichierimp <> " "
		fdeletefile(left(fichierimp),errl,false)		;FACTURX on peut supprimer le fichier de l'edition
	endif
	;fichierpdf contiend l'édition en pdf au format factur-x, on peut alors l'envoyer chez le client	
endp

main 
	masque  = "_testmapirtfxwin.dhoi"
	xmiload masque

	MapiOpen
	FacturXBegin()

	ExempleImpression	;impression d'une édition

	FacturXEnd()	;fermeture des modules
	MapiClose
	programexit 
  • Aucune étiquette