- distinctioninformatique
- Nombre de messages : 5
Date d'inscription : 21/10/2011
GRC/CRM
Ven 21 Oct 2011 - 15:22
En visual basic comme puis-je aller cherche tous les appels et notes faites pour un contact.
Merci!
Merci!
- hench
- Nombre de messages : 163
Date d'inscription : 30/12/2008
Fiche d'Entreprise
Nom de l'entreprise:
Re: GRC/CRM
Ven 21 Oct 2011 - 17:10
Interface Call devrait faire l'affaire
- distinctioninformatique
- Nombre de messages : 5
Date d'inscription : 21/10/2011
GRC/CRM
Sam 22 Oct 2011 - 9:46
Sur le code suivant j'ai toujours index est vide
Merci
Public Sub LireAppel()
'Déclarations
'Dim Acomba As New AcoSDK.AcombaX
Dim CallInt As New AcoSDK.Call
Dim iError, CardPos As Long
Dim GetFiches As Boolean
Dim i As Integer
Const noIndex = 4
GetFiches = True
CallInt.BlankKey()
CallInt.Key_CaPhoneNumber = "4181234567"
CallInt.CaContactType = Contacts.Co_Customer
iError = CallInt.FirstKeys(noIndex, 10, True)
If (iError = 0) And (CallInt.CursorUsed > 0) Then
For i = 1 To CallInt.CursorUsed
'Placer le curseur à l'élément i du tampon
CallInt.Cursor = i
'Ajouter le numéro et le nom du client à la liste
m_NomTM = CallInt.CaComments
Next i
Else
MsgBox("Erreur: " & Acomba.GetErrorMessage(iError))
End If
End Sub
Merci
Public Sub LireAppel()
'Déclarations
'Dim Acomba As New AcoSDK.AcombaX
Dim CallInt As New AcoSDK.Call
Dim iError, CardPos As Long
Dim GetFiches As Boolean
Dim i As Integer
Const noIndex = 4
GetFiches = True
CallInt.BlankKey()
CallInt.Key_CaPhoneNumber = "4181234567"
CallInt.CaContactType = Contacts.Co_Customer
iError = CallInt.FirstKeys(noIndex, 10, True)
If (iError = 0) And (CallInt.CursorUsed > 0) Then
For i = 1 To CallInt.CursorUsed
'Placer le curseur à l'élément i du tampon
CallInt.Cursor = i
'Ajouter le numéro et le nom du client à la liste
m_NomTM = CallInt.CaComments
Next i
Else
MsgBox("Erreur: " & Acomba.GetErrorMessage(iError))
End If
End Sub
- hench
- Nombre de messages : 163
Date d'inscription : 30/12/2008
Fiche d'Entreprise
Nom de l'entreprise:
Re: GRC/CRM
Sam 22 Oct 2011 - 10:31
Hey
Peut-être n'y a-t-il aucun appel "Actif"..
Pour les appels déjà traités
Il existe l'interface ProcessedCall
Peut-être n'y a-t-il aucun appel "Actif"..
Pour les appels déjà traités
Il existe l'interface ProcessedCall
- distinctioninformatique
- Nombre de messages : 5
Date d'inscription : 21/10/2011
GRC/CRM
Sam 22 Oct 2011 - 14:29
Merci cela fonctionnne bien,mais comment faire pour avoir les appels pour seulement un contact ex. par numéro de téléphone ou numéro de client
Voici mon code qui fonctionnne pour tous les appels :
Public Sub ListeAppel()
'Dim Acomba As New AcoSDK.AcombaX
Dim CallInt As New AcoSDK.ProcessedCall
Dim iError, CardPos As Long
Dim GetFiches As Boolean
Dim i As Integer
Const noIndex = 4
GetFiches = True
CallInt.BlankKey()
CallInt.Key_PCPhoneNumber = 4507687266
CallInt.PCContactType = Contacts.Co_Customer
'CallInt.Key_CaContacNumber = 990
iError = CallInt.LastKeys(noIndex, 100, True)
If (iError = 0) And (CallInt.CursorUsed > 0) Then
For i = 1 To CallInt.CursorUsed
CallInt.Cursor = i
m_NomTM = NzVB(CallInt.Key_PCPhoneNumber, "").ToString()
m_NomTM = m_NomTM + " time:" + NzVB(CallInt.Key_PCTimeProcessed, "").ToString()
m_NomTM = m_NomTM + " Cléunique:" + NzVB(CallInt.Key_PCUnique, "").ToString()
m_NomTM = m_NomTM + " Commentaire:" + NzVB(CallInt.PCComments, "").ToString()
MsgBox(m_NomTM)
Next i
Else
MsgBox("Erreur: " & Acomba.GetErrorMessage(iError))
End If
End Sub
Voici mon code qui fonctionnne pour tous les appels :
Public Sub ListeAppel()
'Dim Acomba As New AcoSDK.AcombaX
Dim CallInt As New AcoSDK.ProcessedCall
Dim iError, CardPos As Long
Dim GetFiches As Boolean
Dim i As Integer
Const noIndex = 4
GetFiches = True
CallInt.BlankKey()
CallInt.Key_PCPhoneNumber = 4507687266
CallInt.PCContactType = Contacts.Co_Customer
'CallInt.Key_CaContacNumber = 990
iError = CallInt.LastKeys(noIndex, 100, True)
If (iError = 0) And (CallInt.CursorUsed > 0) Then
For i = 1 To CallInt.CursorUsed
CallInt.Cursor = i
m_NomTM = NzVB(CallInt.Key_PCPhoneNumber, "").ToString()
m_NomTM = m_NomTM + " time:" + NzVB(CallInt.Key_PCTimeProcessed, "").ToString()
m_NomTM = m_NomTM + " Cléunique:" + NzVB(CallInt.Key_PCUnique, "").ToString()
m_NomTM = m_NomTM + " Commentaire:" + NzVB(CallInt.PCComments, "").ToString()
MsgBox(m_NomTM)
Next i
Else
MsgBox("Erreur: " & Acomba.GetErrorMessage(iError))
End If
End Sub
- hench
- Nombre de messages : 163
Date d'inscription : 30/12/2008
Fiche d'Entreprise
Nom de l'entreprise:
Re: GRC/CRM
Sam 22 Oct 2011 - 16:27
Ce que je ferais est d'utiliser une méthode avec tampon - parcourir chaque enregistrement avec une boucle et comparer CallInt.PCContactNumber avec Customer.CuNumber
Voici un algorithme théorique:
Bon succès !
Voici un algorithme théorique:
- Code:
// Variables
Customer = New AcoSDK.Customer008
NoClient = "12345"
TotalCards = CallInt.NumCards()
// Extraire toutes les cartes selon l'Index 1
Si CallInt.GetCards(1, TotalCards, True) = 0 Alors
// Boucle en déplacant le curseur
Boucle $i = 1 à CallInt.CursorUsed
Call.Cursor = $i
// Si le numéro du contact de l'appel équivaut au numéro du client recherché
Si CallInt.PCContactNumber = Customer.CuNumber Alors
// Processus à effectuer
Fin Si
Fin Boucle
Fin Si
Bon succès !
- distinctioninformatique
- Nombre de messages : 5
Date d'inscription : 21/10/2011
GRC/CRM
Sam 22 Oct 2011 - 19:33
Merci
- distinctioninformatique
- Nombre de messages : 5
Date d'inscription : 21/10/2011
GRC/CRM
Dim 23 Oct 2011 - 9:29
Voici le code qui fonctionne, mais avec le temps j'ai peur que le temps de réponse devienne trop long s'il y a par exemple 1,000,000 ou plus dans CallInt.NumCards.
Merci!
Donc si je comprends bien il est impossible d'aller chercher seulement les appels d'un seul contact?
[code]
Public Sub ListeAppel()
'Déclarations
Dim CallInt As New AcoSDK.ProcessedCall
Dim iError, TotalCards, i As Long
Dim GetFiches As Boolean
Dim noIndex As Int16 = 4
GetFiches = True
' On récupére le nombre maximum d'appels
TotalCards = CallInt.NumCards
'Met à vide toutes les propriétés de clé de
CallInt.BlankKey()
iError = CallInt.LastKeys(noIndex, TotalCards, True)
If (iError = 0) And (CallInt.CursorUsed > 0) Then
For i = 1 To CallInt.CursorUsed
'Placer le curseur à l'élément i du tampon
CallInt.Cursor = i
'Assignation de la valeur saisie dans la zone de texte en fonction du numéro de téléphone du client
If Trim(CallInt.Key_PCPhoneNumber) = 4501234567 Then
m_NomTM = NzVB(CallInt.Key_PCPhoneNumber, "").ToString()
m_NomTM = m_NomTM + " time:" + NzVB(CallInt.Key_PCTimeProcessed, "").ToString()
m_NomTM = m_NomTM + " Cléunique:" + NzVB(CallInt.Key_PCUnique, "").ToString()
m_NomTM = m_NomTM + " Commentaire:" + NzVB(CallInt.PCComments, "").ToString()
MsgBox(m_NomTM)
End If
Next i
Else
MsgBox("Erreur: " & Acomba.GetErrorMessage(iError))
End If
End Sub
End Class
Merci!
Donc si je comprends bien il est impossible d'aller chercher seulement les appels d'un seul contact?
[code]
Public Sub ListeAppel()
'Déclarations
Dim CallInt As New AcoSDK.ProcessedCall
Dim iError, TotalCards, i As Long
Dim GetFiches As Boolean
Dim noIndex As Int16 = 4
GetFiches = True
' On récupére le nombre maximum d'appels
TotalCards = CallInt.NumCards
'Met à vide toutes les propriétés de clé de
CallInt.BlankKey()
iError = CallInt.LastKeys(noIndex, TotalCards, True)
If (iError = 0) And (CallInt.CursorUsed > 0) Then
For i = 1 To CallInt.CursorUsed
'Placer le curseur à l'élément i du tampon
CallInt.Cursor = i
'Assignation de la valeur saisie dans la zone de texte en fonction du numéro de téléphone du client
If Trim(CallInt.Key_PCPhoneNumber) = 4501234567 Then
m_NomTM = NzVB(CallInt.Key_PCPhoneNumber, "").ToString()
m_NomTM = m_NomTM + " time:" + NzVB(CallInt.Key_PCTimeProcessed, "").ToString()
m_NomTM = m_NomTM + " Cléunique:" + NzVB(CallInt.Key_PCUnique, "").ToString()
m_NomTM = m_NomTM + " Commentaire:" + NzVB(CallInt.PCComments, "").ToString()
MsgBox(m_NomTM)
End If
Next i
Else
MsgBox("Erreur: " & Acomba.GetErrorMessage(iError))
End If
End Sub
End Class
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum