Проект

Общее

Профиль

Отчет 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, настроить интервалы и время запуска

Экспортировать в PDF HTML TXT