none
Pegar email Manager AD (VBS) RRS feed

  • Pergunta

  • Bom dia,

    Galera, estou tentando criar uma assinatura de e-mail(Outlook) totalmente automatizada, porém, existe um campo que não estou conseguindo pegar, o email do manager. ele está retornando o CN do Maneger no caso queria que retornasse o email.

    alguém pode me dá um help.

    Segue o print do retorno.

    segue o script.

    On Error Resume Next
    Set objSysInfo = CreateObject("ADSystemInfo")
    strUser = objSysInfo.UserName
    Set objUser = GetObject("LDAP://" & strUser)
    With objUser
      strName = .FullName
      strTitle = .Description
    End With
    
    strCompany = objUser.Company
    strAddress = objUser.streetAddress
    strpostalCode = objUser.postalCode
    strl = objUser.l
    strco = objUser.co
    strPhone = objUser.TelephoneNumber
    strFax = objUser.facsimileTelephoneNumber
    strMail = objuser.mail
    strWeb = objuser.wWWHomePage
    strDescription = objuser.Description
    strPhoneHome = objuser.homephone
    strMobile = objuser.mobile
    strManager = objuser.manager
    Set objword = CreateObject("Word.Application")
    With objword
    
      Set objDoc = .Documents.Add()
      Set objSelection = .Selection
      Set objEmailOptions = .EmailOptions
    End With
    
    Set objSignatureObject = objEmailOptions.EmailSignature
    Set objSignatureEntries = objSignatureObject.EmailSignatureEntries
    With objSelection
    
       With .ParagraphFormat
           .LineSpacingRule = wdLineSpaceSimple
           .SpaceAfter = 0
       End With
      .TypeText Chr(11)
    
      With .Font
        .Name = "Calibri"
        .Size = 11
        .Bold = false
      End With
       .TypeText "Atenciosamente,"
      .TypeText Chr(11)
      .TypeText Chr(11)
    
      With .Font
        .Name = "Calibri"
        .Size = 11
        .Bold = true
    	.Italic = true
      End With
        .TypeText strName & chr(11)
      With .Font
        .Name = "Calibri"
        .Size = 11
        .Bold = False
        .Italic = False
      End With
      
      .TypeText strDescription & chr(11)
      With .Font
        .Name = "Calibri"
        .Size = 11
        .Bold = False
        .Italic = False
      End With  
      
    
      .TypeText "Msn/e-mail: "
      Set objLink = objSelection.Hyperlinks.Add(objSelection.Range, "mailto:" + strMail,,"empresa",strMail)
      .TypeText Chr(11)
      With .Font
        .Name = "Calibri"
        .Size = 11
        .Bold = false
      End With
        .Font.Italic = False
    	if (a="0") Then Wscript.Quit
    		strPhoneHome = strPhoneHome + " / +55 " + strMobile
    	.TypeText strAddress & "Fone: +55 " & strPhoneHome
    	.TypeText Chr(11)
     	Set objLink = objSelection.Hyperlinks.Add(objSelection.Range, strWeb,,"empresa",strWeb)
    	.TypeText Chr(11)
    	.InlineShapes.AddPicture "\\192.168.0.50\netlogon\img\imagem.png", True, True
    		.TypeText Chr(11)
    		e = "Como está o meu atendimento? Envie seus comentários para o meu Gerente, através do e-mail "
    		With .Font
    			.Name = "Calibri"
    			.Bold = true
    			.Size = 11
    			.Italic = true
    		End With
    		.TypeText e
    		Set objLink = objSelection.Hyperlinks.Add(objSelection.Range, "mailto: " + strManager,,"empresa",strManager)
        
        .TypeText Chr(11)
    	objSelection.Font.Size = "9"
        objSelection.Font.italic = true
        objSelection.Font.Color = 000
        objSelection.Font.Bold = False  
    	objSelection.Font.Name = "Calibri"
        objSelection.TypeText "Esta mensagem e os arquivos nela contidos são confidenciais e legalmente protegidos, somente podendo ser usados pelo indivíduo ou entidade a quem foi endereçada. Caso você a tenha recebido por engano, queira por gentileza devolvê-la ao remetente e, posteriormente, apagá-la, pois a disseminação, encaminhamento, uso, impressão ou cópia do conteúdo desta mensagem são expressamente proibidos."
    	
    	.TypeText Chr(11)
    	objSelection.Font.Size = "28"
        objSelection.Font.italic = false
        objSelection.Font.Color = 26112    
        objSelection.Font.Bold = False 
    	objSelection.Font.Name = "Webdings"
        objSelection.TypeText "P"
    	
    	objSelection.Font.Size = "10"
        objSelection.Font.italic = false
        objSelection.Font.Color = 26112    
        objSelection.Font.Bold = False 
    	objSelection.Font.Name = "Arial, sans-serif"
        objSelection.TypeText " Antes de imprimir, pense em sua responsabilidade com a redução de custos, e compromisso com o MEIO AMBIENTE."
    
    
      End With
    
    Set objSelection = objDoc.Range()
    objSignatureEntries.Add "AD Signature", objSelection
    objSignatureObject.NewMessageSignature = "AD Signature"
    objSignatureObject.ReplyMessageSignature = "AD Signature"
    objDoc.Saved = True
    
    msgbox ("Obrigado! Assinatura criada com sucesso!")
    objword.Quit


    quarta-feira, 18 de setembro de 2013 14:19

Respostas

  • Marcos,

    Quando você usa o código Set objUser = GetObject("LDAP://" & strUser), você está trazendo todos os atributos do usuário logado (porque o strUser tem este valor que pegou um pouco antes).

    O único atributo do Manager é o nome distinto do manager. Você não vai ter os dados do manager dentro de outra conta.

    O que vc tem que fazer é buscar as informações na conta no manager e já que vc tem o nome distinto do manager tente assim:

    Set objUserManager = GetObject("LDAP://" & strManager)
    
    strEmaildoManager=objUserManager.mail


    Fábio de Paula Junior

    • Marcado como Resposta Marcos.R.Silva quinta-feira, 19 de setembro de 2013 13:09
    quarta-feira, 18 de setembro de 2013 23:41
    Moderador

Todas as Respostas

  • Marcos,

    Quando você usa o código Set objUser = GetObject("LDAP://" & strUser), você está trazendo todos os atributos do usuário logado (porque o strUser tem este valor que pegou um pouco antes).

    O único atributo do Manager é o nome distinto do manager. Você não vai ter os dados do manager dentro de outra conta.

    O que vc tem que fazer é buscar as informações na conta no manager e já que vc tem o nome distinto do manager tente assim:

    Set objUserManager = GetObject("LDAP://" & strManager)
    
    strEmaildoManager=objUserManager.mail


    Fábio de Paula Junior

    • Marcado como Resposta Marcos.R.Silva quinta-feira, 19 de setembro de 2013 13:09
    quarta-feira, 18 de setembro de 2013 23:41
    Moderador
  • Fabio,

    Exatamente o que queria. Obrigado pela informação.

    Grato, 

    Marcos Rufino.

    quinta-feira, 19 de setembro de 2013 13:15