Отчет DGMGRL для контроля синхронизации StandBy¶
Создать файл SendDGMGRL.vbs следующего содержания
'----- Константы: которые нужно задать ----------
const SMTP_Host = "mail.server.ru" ' Адрес SMTP-сервера
const DB_Connection = "sys/pasword@instance" 'Строка соединения с БД
const SMTP_Subj = "Отчет dgmgrl" ' Тема сообщения
const SMTP_Port = 25 ' Порт SMTP
const SMTP_Name = "smtp_user" ' Логин для отправки
const SMTP_Password = "pswd" ' Пароль для отправки
const SMTP_From = "user@server.ru" ' Адрес отправителя
const SMTP_To = "notify@cwms3000.ru" ' Адрес получателя
const WaitCyclesCnt = 300 ' Задержка в секундах на ожидание вывода
'------------------------------------------------
const cdoSendUsingPort = 2
Const cdoBasic = 1
dim fso, fn, f, ff(), cnt
dim WshShell, oExec, input
set fso=createobject("Scripting.FileSystemObject")
Set WshShell = WScript.CreateObject("WScript.Shell")
Set oExec = WshShell.Exec("dgmgrl")
oExec.StdIn.Write "connect " & DB_Connection
oExec.StdIn.Write VbCrLf
oExec.StdIn.Write "show configuration;"
oExec.StdIn.Write VbCrLf
oExec.StdIn.Write "show database wms sendqentries;"
oExec.StdIn.Write VbCrLf
oExec.StdIn.Write "show database bwms recvqentries;"
oExec.StdIn.Write VbCrLf
oExec.StdIn.Write "exit;"
oExec.StdIn.Write VbCrLf
input = ""
Do While oExec.Status = 0
WScript.Sleep 100
Loop
Do While Not oExec.StdOut.AtEndOfStream
input = input & oExec.StdOut.Read(1)
Loop
'Set f = fso.GetFolder(fso.buildpath(Cons_Path, "attachment")).Files
' Создание списка файлов
'for each fn in f
' if lcase(fso.getextensionname(fn))="txt" then
' AddToArray fn, ff, cnt
' end if
'next
' Отправка письма
SendMessage SMTP_To, SMTP_Subj & " от " & Now, input, ff
' Удаление файлов
'for each fn in ff
' fso.deletefile fn
'next
'----------------
' Отправка электронного письма
sub SendMessage(Recipient, Subj , Text, Attachments)
dim msg,fn
set msg = WScript.CreateObject("CDO.Message")
with msg
.BodyPart.charset = "KOI8-R"
.From = SMTP_From
.To = Recipient
.Subject = Subj
.TextBody = text
.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = SMTP_Host
.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = cdoSendUsingPort
.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = SMTP_Port
.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername") = SMTP_Name
.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword") = SMTP_Password
.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic
.Configuration.Fields.Update
.MimeFormatted = true
for each fn in attachments
.addattachment fn
next
.Send
end with
end sub
'----------------
' Добавление элемента в массив
sub AddToArray(Itm, Arr, Count)
Count = Count + 1
ReDim Preserve Arr(Count-1)
Arr(Count-1) = Itm
end sub
Добавить вызов этого файла в планировщик Windows, настроить интервалы и время запуска