У меня был отчет Excel, который извлекал данные из Avaya CMS, однако они переместили приложение Avaya CMS с моей рабочей станции в RD Web Access. Теперь VBA больше не работает, так как старая CMS, которая была установлена на моей рабочей станции, теперь находится в веб-доступе RD. Можно ли получить доступ к Avaya CMS через веб-доступ к удаленному рабочему столу, чтобы извлечь отчет, чтобы преуспеть через VBA?
Заранее спасибо!!
Sub GetIntervalData()
Dim cvsApp As Object
Dim cvsConn As Object
Dim cvsSrv As Object
Dim Rep As Object
Dim Info As Object, Log As Object, b As Object
Set cvsApp = CreateObject("ACSUP.cvsApplication")
'Set cvsConn = CreateObject("ACSCN.cvsConnection")
Set cvsSrv = CreateObject("ACSUPSRV.cvsserver")
Set Rep = CreateObject("ACSREP.cvsReport")
'Clear Data
Sheets("Domestic Interval Data").Select
Range("A1:AR300").ClearContents
Sheets("Domestic").Activate
serverAddress = Range("B1").Value
UserName = Range("B2").Value
Password1 = Range("C2").Value
If cvsApp.CreateServer(UserName, "", "", serverAddress, False, "ENU", cvsSrv, cvsConn) Then
If cvsConn.Login(UserName, Password1, serverAddress, "ENU") Then
On Error Resume Next
cvsSrv.Reports.ACD = 1
Set Info = cvsSrv.Reports.Reports("Historical\Designer\APS Report (MultiSkill)")
If Info Is Nothing Then
If cvsSrv.Interactive Then
MsgBox "The report Historical\Designer\APS Report (MultiSkill) was not found on ACD 1.", vbCritical Or vbOKOnly, "Avaya CMS Supervisor"
Else
Set Log = CreateObject("ACSERR.cvsLog")
Log.AutoLogWrite "The report Historical\Designer\APS Report (MultiSkill) was not found on ACD 1."
Set Log = Nothing
End If
Else
b = cvsSrv.Reports.CreateReport(Info, Rep)
If b Then
Rep.Window.Top = 75
Rep.Window.Left = 690
Rep.Window.Width = 19140
Rep.Window.Height = 11400
Rep.TimeZone = "default"
Rep.SetProperty "Split/Skills","1555;1551;1552;1553;1554;1570;1998;1999"
Rep.SetProperty "Dates", "2/14/2018"
Rep.SetProperty "Times", "00:00-23:30"
b = Rep.ExportData("", 9, 0, False, False, True)
Rep.Quit
If Not cvsSrv.Interactive Then cvsSrv.ActiveTasks.Remove Rep.TaskID
Set Rep = Nothing
End If
End If
Set Info = Nothing
End If
cvsApp.Servers.Remove cvsSrv.ServerKey
cvsConn.Logout
cvsConn.Disconnect
cvsSrv.Connected = False
Set Log = Nothing
Set Rep = Nothing
Set cvsSrv = Nothing
Set cvsConn = Nothing
Set cvsApp = Nothing
Sheets("Domestic Interval Data").Select
Range("A1").Select
ActiveSheet.Paste
End If
Sheets("Domestic").Activate
End Sub
** Этот код создает сеанс avaya cms и запускает отчет, извлекает его и вставляет непосредственно в Excel.