Lecture de flux RSS – Episode 6

La nouvelle saison de la saga « Lecture de flux RSS » arrive enfin en France, le temps d’être tournée aux Etats-Unis et d’être doublée… 🙂

Dans cet épisode, nous allons sauvegarder les articles du flux dans les tables Access.

Si vous avez manqué le début…

La saga « Lecture de flux RSS » a commencé par ces articles :

Quelques aménagements du lecteur RSS

Pour permettre la sauvegarde des articles dans notre table « tbl Flux Articles« , il va falloir ajouter un peu de code VBA. Pour que le lecteur RSS continue d’être une « boîte noire qui gère toute seule sa cuisine interne », c’est la classe LecteurRSS qui prendra en charge la sauvegarde.

Pour cela, il est indispensable que la classe LecteurRSS connaisse le numéro de flux géré, c’est-à-dire l’équivalent du champ [tbl Flux].[Numéro Flux]. Comme ce champ est clef primaire dans la table, qu’il sert de relation avec les articles, et qu’on souhaite justement enregistrer les articles du flux… vous voyez la suite.

Par conséquent, rajoutez déjà ceci dans la classe LecteurRSS :

On mémorise le numéro de flux dans la variable privée m_lngNumeroFlux, encapsulée dans la propriété NumeroFlux.

La méthode d’enregistrement

Ajoutez également cette méthode, toujours dans la classe LecteurRSS :

Important
L’exemple de code ci-dessus fait appel à la bibliothèque DAO (Microsoft DAO Object Library). Cette bibliothèque doit être associée à votre base de données pour que le programme fonctionne.

Pour plus de détails sur les références, consultez cette page.

Quelques explications

  • La fonction reçoit un paramètre booléen qui indique si la table des articles doit être vidée avant la sauvegarde. Plus précisément : on vide les anciens articles du flux concerné, pas des autres flux. On pourrait affiner avec un dispositif de vidage au bout de quelques jours.
  • Ensuite, on utilise un Recordset pour écrire chaque article dans la table tbl Flux Articles.

On s’arrête là pour l’instant ; vous verrez demain comment mettre ce code en action à partir d’un formulaire. 😉

Vous aimerez aussi...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *