J'essaie de tirer des données d'un système de données d'appel ACD, Nortel Contact Center 6.0
pour être exact, et si vous utilisez ce système particulier, ce que j'essaie de capturer est l'appel quotidien par appel. Cependant, lorsque j'utilise ce codeErreur de table de requête SQL VBA
(SCW est une chaîne de texte commun qui équivaut à eCallByCallStat
et sDate est
dDate = Format(Month(deffDate) & "/" & iStartDay & "/" & Year(deffDate), "mm/dd/yyyy")
sDate = Format(dDate, "yyyymmdd")
)
sSql = ""
sConn = "ODBC;DSN=Aus1S002;UID=somevaliduser;PWD=avalidpassword;SRVR=Thecorrectserver;DB=blue"
sSql = "SELECT " & sCW & sDate & ".Timestamp, "
sSql = sSql & sCW & sDate & ".CallEvent, "
sSql = sSql & sCW & sDate & ".CallEventName, "
sSql = sSql & sCW & sDate & ".CallID, "
sSql = sSql & sCW & sDate & ".TelsetLoginID, "
sSql = sSql & sCW & sDate & ".AssociatedData, "
sSql = sSql & sCW & sDate & ".Destination, "
sSql = sSql & sCW & sDate & ".EventData, "
sSql = sSql & sCW & sDate & ".Source, "
sSql = sSql & sCW & sDate & ".Time " & vbCrLf
sSql = sSql & "FROM blue.dbo.eCallByCallStat" & sDate & " " & sCW & sDate & vbCrLf
sSql = sSql & " ORDER BY " & sCW & sDate & ".Timestamp"
Set oQT = ActiveSheet.QueryTables.Add(Connection:=sConn, Destination:=Range("A1"), Sql:=sSql)
oQT.Refresh BackgroundQuery:=False
Do While oQT.Refreshing = True
Loop"
Quand je lance ce que je reçois un message d'erreur impair à oQT.Refresh BackgroundQuery: = False
Étrangement il a travaillé pour un mois puis vient de mourir
@ Loopo En fait, j'ajouté le ""
à la chaîne de connexion et ont en fait le nom d'utilisateur et mot de passe codés en dur dans la requête avec les citations, je ont depuis les pour plus de clarté dans l'affichage
l'erreur que je reçois est
erreur d'exécution « -2147417848 (80010108) » : Méthode 'Actualiser "de l'objet" _QueryTable' n'a pas pu
Merci pour votre contribution Kevin. La base de données n'est jamais dans un état où personne n'y accède, c'est un système de traitement d'appel qui est sur 24 x 7 et toujours connecté aux clients. Au moins c'est ma compréhension. Si je le fais manuellement via Excel, je ne reçois jamais d'erreur, ou j'ai des problèmes seulement quand je le fais via une macro, cela me donne des problèmes qui me font penser que c'est mon code qui cause le problème.
Je me connecte à la base de données via ODBC comme recommandé par le fabricant, mais je me demande si ils ont déjà envisagé ce genre de chose.
Je vais voir si je peux tirer parti de cela dans un projet .NET et voir si cela aide.
Quel est le message d'erreur? – Taptronic
idem, quel est le numéro d'erreur et le message que vous obtenez? –