Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

FUSION LINKCONTACT V1 - AGENDA & GESTIONNAIRE DE CONTACT


Description

Cliquez pour voir la capture en taille normale
- Bon le code est assez simple, j'utilise une BDD Access relié à du Data, personnellement j'aurai préféré utilisé de l'ADO mais cété pour un PTI de BTS.

- Cette source a plusieurs mois déjà, elle a relativement bien marché sur le site www.telecharger.com (dont je remercie en passant) avec plus de 2500 téléchargements chaque mois.

- Pour ce code a au moins un bug, la modification de rendez-vous merde un peu. Si quelqu'un a envie de s'amuser à réparer ce bug qui se trouve dans la form "frmChargement", je lui en serait redevable...

Extrait d'un bout de code gérant la BDD avec le composant data :
 

Source

  • Private Sub subGestionBDD(sens As Boolean)
  • 'Gère la gestion des erreurs
  • 'On Error GoTo erreur_bdd2
  • Dim i2 As Integer, iContact As Integer, iRV As Integer
  • If sens = True Then
  • 'Enregistrement de la BDD
  • For i = 0 To 1
  • If Dir$(App.Path & "\" & AdresseBDD) <> vbNullString Then
  • Me.DataBDD(i).DatabaseName = App.Path & "\" & AdresseBDD
  • Else
  • GoTo erreur_bdd2
  • End If
  • Me.DataBDD(i).Refresh
  • If Me.DataBDD(i).Recordset.RecordCount > 0 Then Me.DataBDD(i).Recordset.MoveFirst
  • 'module d'ajout d'un enregistrement
  • If i = 0 And CountContact(0) > 0 Then
  • For i2 = 1 To CountContact(0)
  • Me.DataBDD(i).Recordset.AddNew
  • Call subRemplissementBDD_Contact(i, ContactGestion(0, i2))
  • Me.DataBDD(i).Recordset.Update
  • Next i2
  • ElseIf i = 1 And CountRendezvous(0) > 0 Then
  • For i2 = 1 To CountRendezvous(0)
  • Me.DataBDD(i).Recordset.AddNew
  • Call subRemplissementBDD_RV(i, RendezvousGestion(0, i2))
  • Me.DataBDD(i).Recordset.Update
  • Next i2
  • End If
  • If Me.DataBDD(i).Recordset.RecordCount > 0 Then
  • 'module de supression d'un enregistrement
  • If i = 0 And CountContact(2) > 0 Then
  • For i2 = 1 To CountContact(2)
  • Me.DataBDD(i).Refresh
  • If Me.DataBDD(i).Recordset.RecordCount = 1 Then
  • Me.DataBDD(i).Recordset.Delete
  • ElseIf Me.DataBDD(i).Recordset.RecordCount > 1 Then
  • Me.DataBDD(i).Recordset.Move ContactGestion(2, i2) - i2
  • Me.DataBDD(i).Recordset.Delete
  • End If
  • Next i2
  • ElseIf i = 1 And CountRendezvous(2) > 0 Then
  • For i2 = 1 To CountRendezvous(2)
  • Me.DataBDD(i).Refresh
  • If Me.DataBDD(i).Recordset.RecordCount = 1 Then
  • Me.DataBDD(i).Recordset.Delete
  • ElseIf Me.DataBDD(i).Recordset.RecordCount > 1 Then
  • Me.DataBDD(i).Recordset.Move RendezvousGestion(2, i2) - i2
  • Me.DataBDD(i).Recordset.Delete
  • End If
  • Next i2
  • End If
  • 'module de modification d'un enregistrement
  • If i = 0 And CountContact(1) > 0 Then
  • For i2 = 1 To CountContact(1)
  • Me.DataBDD(i).Refresh
  • Me.DataBDD(i).Recordset.Move ContactGestion(1, i2) - i2
  • Me.DataBDD(i).Recordset.Edit
  • Call subRemplissementBDD_Contact(i, ContactGestion(1, i2))
  • Me.DataBDD(i).Recordset.Update
  • Next i2
  • ElseIf i = 1 And CountRendezvous(1) > 0 Then
  • For i2 = 1 To CountRendezvous(1)
  • Me.DataBDD(i).Refresh
  • Me.DataBDD(i).Recordset.Move RendezvousGestion(1, i2)
  • If Me.DataBDD(i).Recordset.AbsolutePosition < 0 Then Me.DataBDD(i).Recordset.AbsolutePosition = 0
  • Me.DataBDD(i).Recordset.Edit
  • Call subRemplissementBDD_RV(i, RendezvousGestion(1, i2))
  • Me.DataBDD(i).Recordset.Update
  • Next i2
  • End If
  • Me.DataBDD(i).Refresh
  • End If
  • Next i
  • Else
  • ...
Private Sub subGestionBDD(sens As Boolean)
    'Gère la gestion des erreurs
    'On Error GoTo erreur_bdd2
    Dim i2 As Integer, iContact As Integer, iRV As Integer
    If sens = True Then
        'Enregistrement de la BDD
        For i = 0 To 1
            If Dir$(App.Path & "\" & AdresseBDD) <> vbNullString Then
                Me.DataBDD(i).DatabaseName = App.Path & "\" & AdresseBDD
            Else
                GoTo erreur_bdd2
            End If
            Me.DataBDD(i).Refresh
            If Me.DataBDD(i).Recordset.RecordCount > 0 Then Me.DataBDD(i).Recordset.MoveFirst
            'module d'ajout d'un enregistrement
            If i = 0 And CountContact(0) > 0 Then
                For i2 = 1 To CountContact(0)
                    Me.DataBDD(i).Recordset.AddNew
                    Call subRemplissementBDD_Contact(i, ContactGestion(0, i2))
                    Me.DataBDD(i).Recordset.Update
                Next i2
            ElseIf i = 1 And CountRendezvous(0) > 0 Then
                For i2 = 1 To CountRendezvous(0)
                    Me.DataBDD(i).Recordset.AddNew
                    Call subRemplissementBDD_RV(i, RendezvousGestion(0, i2))
                    Me.DataBDD(i).Recordset.Update
                Next i2
            End If
            If Me.DataBDD(i).Recordset.RecordCount > 0 Then
                'module de supression d'un enregistrement
                If i = 0 And CountContact(2) > 0 Then
                    For i2 = 1 To CountContact(2)
                        Me.DataBDD(i).Refresh
                        If Me.DataBDD(i).Recordset.RecordCount = 1 Then
                            Me.DataBDD(i).Recordset.Delete
                        ElseIf Me.DataBDD(i).Recordset.RecordCount > 1 Then
                            Me.DataBDD(i).Recordset.Move ContactGestion(2, i2) - i2
                            Me.DataBDD(i).Recordset.Delete
                        End If
                    Next i2
                ElseIf i = 1 And CountRendezvous(2) > 0 Then
                    For i2 = 1 To CountRendezvous(2)
                        Me.DataBDD(i).Refresh
                        If Me.DataBDD(i).Recordset.RecordCount = 1 Then
                            Me.DataBDD(i).Recordset.Delete
                        ElseIf Me.DataBDD(i).Recordset.RecordCount > 1 Then
                            Me.DataBDD(i).Recordset.Move RendezvousGestion(2, i2) - i2
                            Me.DataBDD(i).Recordset.Delete
                        End If
                    Next i2
                End If
                'module de modification d'un enregistrement
                If i = 0 And CountContact(1) > 0 Then
                    For i2 = 1 To CountContact(1)
                        Me.DataBDD(i).Refresh
                        Me.DataBDD(i).Recordset.Move ContactGestion(1, i2) - i2
                        Me.DataBDD(i).Recordset.Edit
                        Call subRemplissementBDD_Contact(i, ContactGestion(1, i2))
                        Me.DataBDD(i).Recordset.Update
                    Next i2
                ElseIf i = 1 And CountRendezvous(1) > 0 Then
                    For i2 = 1 To CountRendezvous(1)
                        Me.DataBDD(i).Refresh
                        Me.DataBDD(i).Recordset.Move RendezvousGestion(1, i2)
                        If Me.DataBDD(i).Recordset.AbsolutePosition < 0 Then Me.DataBDD(i).Recordset.AbsolutePosition = 0
                        Me.DataBDD(i).Recordset.Edit
                        Call subRemplissementBDD_RV(i, RendezvousGestion(1, i2))
                        Me.DataBDD(i).Recordset.Update
                    Next i2
                End If
                Me.DataBDD(i).Refresh
            End If
        Next i
    Else
...

Conclusion

Pour la source entière désolé, il faut la télécharger ici :
http://anti.shareware.free.fr/FTP/FusionLinkContact.zip
parce qu'elle fait environ 800 ko.


- Dans le code donc :

     - Il y a de gestion de BDD avec un composant Data
     - Enregistrement de clé registre (mais bon c pa du tout nouveau)
     - Par contre l'utilisation de la fonction commande au démarrage de l'application n'es pa très courante dans la plupart des sources ici.
     - Sinon un peu de shell...

     Enfin voila la routine des développeurs...

     Si ca peu aider certain qui sont par exemple en BTS...

    Sur ce, bon test !!

    Sinon une version deux va sortir, mais elle réuni en fait logiciel de la vie courante, Agenda, Contact, Boite de réception, P2P, Messagerie Instantanés, Album Photo, ... enfin tout un programme...

    Pour le logiciel complet avec installateur :

    http://telecharger.01net.com/id.php?id=27362&system=windows&rub=Bureautique : Agenda

Et je rappel la source est ici : http://anti.shareware.free.fr/FTP/FusionLinkContact.zip

Merci de comprendre que VbFrance ne peut pas accepter les sources trop grosses.

++
 

Commentaires et avis

signaler à un administrateur
Commentaire de gbillerty le 24/04/2004 19:45:42

On peut pas avoir la source???

signaler à un administrateur
Commentaire de Disicom le 26/04/2004 15:26:19

je te prépare ca, attend je le remet sur le ftp dans la journée

signaler à un administrateur
Commentaire de Disicom le 26/04/2004 15:38:33

je te prépare ca, attend je le remet sur le ftp dans la journée

signaler à un administrateur
Commentaire de Disicom le 26/04/2004 16:00:39

http://anti.shareware.free.fr/FTP/FusionLinkContact.zip

voila (2mo)

signaler à un administrateur
Commentaire de BozzoDodo le 16/04/2005 14:20:09

Ca serait bien si ce lien marchait...
Qu'utilise tu comme controle pour inscrire une date et une heure? merci

signaler à un administrateur
Commentaire de tau le 22/07/2005 08:15:15

salut peut tu m'envoyer le source c'est super important j'ai un projet similaire à faire

karim.messeguem@wanadoo.fr

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,250 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.