Message de rapport:
 

Re: archiver les enregistrements d'une table

Sujet: Re: archiver les enregistrements d'une table
par toco sur 6/2/2008 20:38:02

Voici une idée que j'utilise dans mes applications :

//déclaration des fichiers d'archivage
sdStage_Archive est une Source de Données

//création des alias
HAlias(STAGE,sdStage_Archive)

//Assignation avec les fichiers physiques
sNomFichier est une chaîne

sNomFichier=HChangeNom(sdStage_Archive,"STAGES_"+COMBO_MOIS_LETTRE..ValeurAffichée+COMBO_ANNEE..ValeurAffichée)

//RAZ des fichiers d'archivages
HCréationSiInexistant(sdStage_Archive)


// extraction des données
// Sélection du fichier de sauvegarde
sNomFic est une chaîne
sChemin est une chaîne
sNomFic=fRepSélecteur(fRepEnCours(),"Sélection du dossier d'archivage","","")

//Extraction des données
//borne mini
sCléMin est une chaîne
sCléMin=Complète(COMBO_ANNEE..ValeurAffichée,4)+NumériqueVersChaîne(COMBO_MOIS_LETTRE,"02d")+hValMin

//Borne de la clé max
sCléMax est une chaîne
sCléMax = Complète(COMBO_ANNEE..ValeurAffichée,4)+NumériqueVersChaîne(COMBO_MOIS_LETTRE,"02d")+hValMax

//1 : &Continuer
//2 : &Ne pas continuer
SELON Dialogue("Vous allez archiver les stages du mois de %1 pour l'année %2. Ces données ne seront plus modifiables. Voulez vous continuer ?",...
	COMBO_MOIS_LETTRE..ValeurAffichée,...
	COMBO_ANNEE..ValeurAffichée)
	
	// &Continuer
	CAS 1
		//Change de lieu
		HChangeRep(sdStage_Archive,sNomFic)
		HCréationSiInexistant(sdStage_Archive)
		
		//Filtrage des enregistrements
		HFiltre(STAGE,date_deb_stage,sCléMin,sCléMax)
		HLitPremier(STAGE,date_deb_stage)
		TANTQUE PAS HEnDehors(STAGE)
			HCopieEnreg(sdStage_Archive,STAGE,hCopieIdAuto)
			HAjoute(sdStage_Archive,hFixeIdAuto)
			HSupprime(STAGE,hNumEnrEnCours)
			HLitSuivant(STAGE,date_deb_stage)
		FIN
		Info("Le fichier a été archvé sous le nom : STAGES_"+COMBO_MOIS_LETTRE..ValeurAffichée+COMBO_ANNEE..ValeurAffichée)		
	// &Ne pas continuer
	CAS 2
		RETOUR
FIN

//Fin de l'archivage
HDésactiveFiltre(STAGE)
HAnnuleAlias(sdStage_Archive)
Ferme(FEN_Archivage)



A adapter pour soi même.
Bon courage!
Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2