MX record lookup

Ihave a OS X Server running and use my TimeCapsule as DNS. The mailserver cannot make MX record lookup throug the TimeCapsule... there are no problems in reciving mails, and port 25 is open.

Hi Kelsey
For send e-mail using Script, you could refer to Blog, Send Email from Exchange Online by Using PowerShell
http://blogs.technet.com/b/heyscriptingguy/archive/2011/09/24/send-email-from-exchange-online-by-using-powershell.aspx
If you need foreach loop for just simple SMTP sending, the format should be
$MBs = Get-Mailbox
Foreach($MB in $MBs){
$message = New-Object Microsoft.Exchange.WebServices.Data.EmailMessage -ArgumentList $service
$message.Subject = 'Test is a test'
$message.Body = 'This message is being sent through EWS with PowerShell'
$message.ToRecipients.Add($MB.UserPrincipalName)
$message.SendAndSaveCopy()
Cheers
Zi Feng
Zi Feng
TechNet Community Support

Similar Messages

  • MX Record Lookup Function in Powershell

    Hey Guys, I am looking to get a script running on a weekly basis that takes the information provided by the get-accepteddomain cmdlet and performs an MX lookup for each DomainName.  After the Script has performed the lookups I would like to have it
    e-mail the information.
    I've found a great function for getting the MX record information and it works great.  I'm struggling with how to perform a foreach with the function using data provided by the get-accepteddomain cmdlet and then e-mail the results.
    ### Function to get the MX Records for a domain
    ### Usage: Get-DnsMXQuery -DomainName "gmail.com"
    ### Reference: http://serverfault.com/questions/164508/anyone-have-a-powershell-script-to-look-up-the-mx-record-for-a-domain
    function Get-DnsAddressList
        param(
            [parameter(Mandatory=$true)][Alias("Host")]
              [string]$HostName)
        try {
            return [System.Net.Dns]::GetHostEntry($HostName).AddressList
        catch [System.Net.Sockets.SocketException] {
            if ($_.Exception.ErrorCode -ne 11001) {
                throw $_
            return = @()
    function Get-DnsMXQuery
        param(
            [parameter(Mandatory=$true)]
              [string]$DomainName)
        if (-not $Script:global_dnsquery) {
            $Private:SourceCS = @'
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Runtime.InteropServices;
    namespace PM.Dns {
      public class MXQuery {
        [DllImport("dnsapi", EntryPoint="DnsQuery_W", CharSet=CharSet.Unicode, SetLastError=true, ExactSpelling=true)]
        private static extern int DnsQuery(
            [MarshalAs(UnmanagedType.VBByRefStr)]
            ref string pszName,
            ushort     wType,
            uint       options,
            IntPtr     aipServers,
            ref IntPtr ppQueryResults,
            IntPtr pReserved);
        [DllImport("dnsapi", CharSet=CharSet.Auto, SetLastError=true)]
        private static extern void DnsRecordListFree(IntPtr pRecordList, int FreeType);
        public static string[] Resolve(string domain)
            if (Environment.OSVersion.Platform != PlatformID.Win32NT)
                throw new NotSupportedException();
            List<string> list = new List<string>();
            IntPtr ptr1 = IntPtr.Zero;
            IntPtr ptr2 = IntPtr.Zero;
            int num1 = DnsQuery(ref domain, 15, 0, IntPtr.Zero, ref ptr1, IntPtr.Zero);
            if (num1 != 0)
                throw new Win32Exception(num1);
            try {
                MXRecord recMx;
                for (ptr2 = ptr1; !ptr2.Equals(IntPtr.Zero); ptr2 = recMx.pNext) {
                    recMx = (MXRecord)Marshal.PtrToStructure(ptr2, typeof(MXRecord));
                    if (recMx.wType == 15)
                        list.Add(Marshal.PtrToStringAuto(recMx.pNameExchange));
            finally {
                DnsRecordListFree(ptr1, 0);
            return list.ToArray();
        [StructLayout(LayoutKind.Sequential)]
        private struct MXRecord
            public IntPtr pNext;
            public string pName;
            public short  wType;
            public short  wDataLength;
            public int    flags;
            public int    dwTtl;
            public int    dwReserved;
            public IntPtr pNameExchange;
            public short  wPreference;
            public short  Pad;
            Add-Type -TypeDefinition $Private:SourceCS -ErrorAction Stop
            $Script:global_dnsquery = $true
        [PM.Dns.MXQuery]::Resolve($DomainName) | % {
            $rec = New-Object PSObject
            Add-Member -InputObject $rec -MemberType NoteProperty -Name "Host"        -Value $_
            Add-Member -InputObject $rec -MemberType NoteProperty -Name "AddressList" -Value $(Get-DnsAddressList $_)
            $rec
    ### END Function
    The funtion above does a great job of pulling the mx records for a domain
    Example Output:
    [PS] C:\>Get-DnsMXQuery -DomainName godaddy.com
    Host                                                                      
    AddressList
    mailstore1.secureserver.net                                               
    216.69.186.201
    smtp.secureserver.net                                                     
    216.69.186.201
    Example Output "Get-AcceptedDomain
    [PS] C:\>Get-AcceptedDomain
    Name                           DomainName                    
    DomainType                                  Default
    Godaddy.com                    Godaddy.com                    Authoritative                              
    True
    Warmest Regards,
    Kelsey

    Hi Kelsey
    For send e-mail using Script, you could refer to Blog, Send Email from Exchange Online by Using PowerShell
    http://blogs.technet.com/b/heyscriptingguy/archive/2011/09/24/send-email-from-exchange-online-by-using-powershell.aspx
    If you need foreach loop for just simple SMTP sending, the format should be
    $MBs = Get-Mailbox
    Foreach($MB in $MBs){
    $message = New-Object Microsoft.Exchange.WebServices.Data.EmailMessage -ArgumentList $service
    $message.Subject = 'Test is a test'
    $message.Body = 'This message is being sent through EWS with PowerShell'
    $message.ToRecipients.Add($MB.UserPrincipalName)
    $message.SendAndSaveCopy()
    Cheers
    Zi Feng
    Zi Feng
    TechNet Community Support

  • Do CNAME records result in a second DNS lookup

    Hi,
    I am trying (with no luck) to find out if Windows 8 client receives a CNAME record, Does Windows 8 understand how to deal with this record ? I mean, Does the CNAME record results in a second DNS lookup ?
    Thanks,
    Rami

    DNS lookups which point to a CNAME record only result in a single lookup from the client end, but technically they're an A record lookup (since the client doesn't know before hand whether it's an A record or CNAME record they're querying).
    Say you have a CNAME record for cname.mydomain.com which points to
    www.otherdomain.com and that in turn has an A record pointing to 123.123.123.123.
    The client queries DNS requesting the A record for cname.mydomain.com. The DNS resolver does the lookup, and discovers that it's a CNAME record. At this point it does a second lookup (without going back to the client) for the IP address of
    www.otherdomain.com, and then finally once it has that information it passes those details back to the client which it then uses to connect to the relevant resource.
    You can see it for yourself. In a cmd prompt if you run nslookup, then type "set q=a", then enter the full CNAME address you're trying to resolve. You'll see the output will appear as :
    Name:      www.otherdomain.com
    Address:   123.123.123.123
    Aliases:    cname.mydomain.com

  • Srv record add

    I am having problem for srv record creation in outlook autodiscovery, I am using cloudflare for external DNS all is fine but connectivity test saying
    Attempting to locate SRV record _autodiscover._tcp.tulisoft.co.in in DNS.
    The Autodiscover SRV record wasn't found in DNS "
    My cloudflare settings as follows,
    Service:_autodiscover
    Protocol:tcp
    Name:@
    Priority:0
    Weight:0
    Port:443
    Target:HOSTING.tulisoft.co.in
    please let me know any mistake 
    Thanks
    Partha 

    Now another error, Its exchange 2013
    Test Details
    Test Details
    The Microsoft Connectivity Analyzer is attempting to test Autodiscover for [email protected].
      Testing Autodiscover failed.
    Additional Details
    Elapsed Time: 44430 ms.
    Test Steps
    Attempting each method of contacting the Autodiscover service.
      The Autodiscover service couldn't be contacted successfully by any method.
    Additional Details
    Elapsed Time: 44429 ms.
    Test Steps
    Attempting to test potential Autodiscover URL https://tulisoft.co.in/AutoDiscover/AutoDiscover.xml
      Testing of this potential Autodiscover URL failed.
    Additional Details
    Elapsed Time: 42136 ms.
    Test Steps
    Attempting to resolve the host name tulisoft.co.in in DNS.
      The host name resolved successfully.
    Additional Details
    IP addresses returned: 108.162.196.193, 108.162.197.193
    Elapsed Time: 56 ms.
    Testing TCP port 443 on host tulisoft.co.in to ensure it's listening and open.
      The specified port is either blocked, not listening, or not producing the expected response.
      Tell me more about this issue and how to resolve it
    Additional Details
    A network error occurred while communicating with the remote host.
    Elapsed Time: 42079 ms.
    Attempting to test potential Autodiscover URL https://autodiscover.tulisoft.co.in/AutoDiscover/AutoDiscover.xml
      Testing of this potential Autodiscover URL failed.
    Additional Details
    Elapsed Time: 970 ms.
    Test Steps
    Attempting to resolve the host name autodiscover.tulisoft.co.in in DNS.
      The host name resolved successfully.
    Additional Details
    IP addresses returned: 138.91.37.102
    Elapsed Time: 89 ms.
    Testing TCP port 443 on host autodiscover.tulisoft.co.in to ensure it's listening and open.
      The port was opened successfully.
    Additional Details
    Elapsed Time: 231 ms.
    Testing the SSL certificate to make sure it's valid.
      The SSL certificate failed one or more certificate validation checks.
    Additional Details
    Elapsed Time: 649 ms.
    Test Steps
    The Microsoft Connectivity Analyzer is attempting to obtain the SSL certificate from remote server autodiscover.tulisoft.co.in on port 443.
      The Microsoft Connectivity Analyzer successfully obtained the remote SSL certificate.
    Additional Details
    Remote Certificate Subject: CN=HOSTING, Issuer: CN=HOSTING.
    Elapsed Time: 626 ms.
    Validating the certificate name.
      Certificate name validation failed.
      Tell me more about this issue and how to resolve it
    Additional Details
    Host name autodiscover.tulisoft.co.in doesn't match any name found on the server certificate CN=HOSTING.
    Elapsed Time: 0 ms.
    Attempting to contact the Autodiscover service using the HTTP redirect method.
      The attempt to contact Autodiscover using the HTTP Redirect method failed.
    Additional Details
    Elapsed Time: 646 ms.
    Test Steps
    Attempting to resolve the host name autodiscover.tulisoft.co.in in DNS.
      The host name resolved successfully.
    Additional Details
    IP addresses returned: 138.91.37.102
    Elapsed Time: 8 ms.
    Testing TCP port 80 on host autodiscover.tulisoft.co.in to ensure it's listening and open.
      The port was opened successfully.
    Additional Details
    Elapsed Time: 216 ms.
    The Microsoft Connectivity Analyzer is checking the host autodiscover.tulisoft.co.in for an HTTP redirect to the Autodiscover service.
      The Microsoft Connectivity Analyzer failed to get an HTTP redirect response for Autodiscover.
    Additional Details
    An HTTP 401 Unauthorized response was received from the remote Unknown server. This is usually the result of an incorrect username or password. If you are attempting to log onto an Office 365 service, ensure you are using your full User Principal Name (UPN).
    HTTP Response Headers:
    request-id: 35c38537-7f9d-4d32-82eb-dac2658583c7
    X-SOAP-Enabled: True
    X-WSSecurity-Enabled: True
    X-WSSecurity-For: None
    X-OAuth-Enabled: True
    Cache-Control: private
    Server: Microsoft-IIS/7.5
    WWW-Authenticate: Negotiate,NTLM,Basic realm="autodiscover.tulisoft.co.in"
    X-AspNet-Version: 4.0.30319
    X-Powered-By: ASP.NET
    X-FEServer: HOSTING
    Date: Sun, 04 May 2014 13:39:05 GMT
    Content-Length: 0
    Elapsed Time: 422 ms.
    Attempting to contact the Autodiscover service using the DNS SRV redirect method.
      The Microsoft Connectivity Analyzer failed to contact the Autodiscover service using the DNS SRV redirect method.
    Additional Details
    Elapsed Time: 676 ms.
    Test Steps
    Attempting to locate SRV record _autodiscover._tcp.tulisoft.co.in in DNS.
      The Autodiscover SRV record was successfully retrieved from DNS.
    Additional Details
    The Service Location (SRV) record lookup returned host autodiscover.tulisoft.co.in.
    Elapsed Time: 17 ms.
    Attempting to test potential Autodiscover URL https://autodiscover.tulisoft.co.in/Autodiscover/Autodiscover.xml
      Testing of this potential Autodiscover URL failed.
    Additional Details
    Elapsed Time: 659 ms.
    Test Steps
    Attempting to resolve the host name autodiscover.tulisoft.co.in in DNS.
      The host name resolved successfully.
    Additional Details
    IP addresses returned: 138.91.37.102
    Elapsed Time: 8 ms.
    Testing TCP port 443 on host autodiscover.tulisoft.co.in to ensure it's listening and open.
      The port was opened successfully.
    Additional Details
    Elapsed Time: 215 ms.
    Testing the SSL certificate to make sure it's valid.
      The SSL certificate failed one or more certificate validation checks.
    Additional Details
    Elapsed Time: 434 ms.
    Test Steps
    The Microsoft Connectivity Analyzer is attempting to obtain the SSL certificate from remote server autodiscover.tulisoft.co.in on port 443.
      The Microsoft Connectivity Analyzer successfully obtained the remote SSL certificate.
    Additional Details
    Remote Certificate Subject: CN=HOSTING, Issuer: CN=HOSTING.
    Elapsed Time: 414 ms.
    Validating the certificate name.
      Certificate name validation failed.
      Tell me more about this issue and how to resolve it
    Additional Details
    Host name autodiscover.tulisoft.co.in doesn't match any name found on the server certificate CN=HOSTING.
    Elapsed Time: 0 ms

  • Exchange 2003 SMTP resolves to incorrect MX record for Outbound emails

    Starting October 2007, we have encountered numerous incidents where users complaint that they can not send emails to randomly with Relayed Denied error. 
    First we thought the problem is with the receipient servers, but after reviewing the SMTP log intensively, I have noticed that the SMTP service on Exchange Server 2003 SP2 tries to send out emails to wrong IP Addresses (instead of sending out to listed IP of MX record, it tries to send to primary domain IP address).
    To test further, we have changed the DNS server of the Exchange Server to public DNS service provided by the ISPs and still received same result.
    If the user tries to send the email again (from the bounced back message), it some times goes through.
    Has anyone know what the problem is?
    Have checked the server configuration, DNS configuration, ran all updates, and yet still same result.  Is one of the Microsoft Updates causing this issue?

    Here is the official explanation i got from MS, sounds like it is doing what they expect it to do.
    Problem Description
    When Exchange 2003 sends e-mail to the Internet using DNS to resolve external domain names a DNS query is done for the remote domain's MX records. In the event that the initial MX query returns a "server failure", Exchange 2003 will fall back to a DNS A record query. If this query is, in turn, successful and there is an A record for the domain in question that happens to be listening on port 25, Exchange will make a connection to that server. However, if this server does not relay, or accept e-mail for the intended domain a NDR will be generated with a 5.7.1, or
    5.5.0 error message.
    There are several domains that have A records that point to IP addresses that accept connections on port 25, but do not relay for the same name space:
    Eg: Mindspring.com; Earthlink.net
    Resolution
    Resolve the DNS resolution problems that are causing occasional MX record failures.
    Examples:
    1. The Exchange server has multiple default gateways set on a multi-homed server.
    This is not a recommended configuration and can cause a number of unexpected network problems. If the internal DNS server the internal NIC points to cannot resolve external DNS queries, this problem can occur.
    Action: remove the default gateway from one of the NICs.
    This doesn’t applies to us, as we don’t use Internal DNS
    2. If the Exchange server points to multiple DNS servers on TCP/IP properties, or on the SMTP Virtual Server properties, verify that each of these DNS servers will return MX records properly. If one of the DNS servers does not return DNS records consistently, rectify this problem.
    Action: remove this DNS server from the external DNS tab.
    Workaround:
    Bypass DNS by creating a SMTP connector with address space of <domain.com> and forward to smart host as the IP address the MX/A points to.
    Exchange Query Explained
    1. If Exchange finds the MX record(s) for a remote domain (through DNS query) it will not fall back to an A record query in the event the MX record (more precisely, the A record the MX record points to) is temporarily not responding on port 25. Instead, Exchange will try another MX record if one exists. If no other MX records exist and none are responding on port 25, the queue will go into a retry state for this remote domain. When that retry state has expired, Exchange will again attempt to resolve MX records for this domain, and so on.
    2. Exchange will fall back to an A record query for the remote domain in the event that no MX record can be found. This is not to say that the MX record does not exist - only that when Exchange issued a DNS query for the remote domain the DNS response was "server failure", which basically means no MX was found. So, the MX record may indeed exist, but Exchange simply could not find it through DNS resolution.
    3. Exchange then queries the A record and this happens to return a result. If the A record is listening on port 25, but does not accept mail for <domain.com> then we will get the NDR with 550 5.7.1 unable to relay (or some variation of this NDR error code) when Exchange connects and attempts to send the e-mail.
    So, the intermittent nature of the problem is caused by a failure to find the MX record and a success in finding A record. This can happen for a variety of reasons, but it boils down to flakey DNS resolution.
    For example:
    a. A bad DNS server listed as a forwader on the DNS server.
    b. A bad DNS server on the TCP/IP properties.
    c. A bad DNS server on the SMTP VS (external DNS servers)
    d. Multiple default gateways on Exchange (ie. multiple NICs on different networks, each NIC having a default GW)
    A netmon on Exchange will show the failed MX lookup and successful A record lookup; however, it may not be conclusive unless the "bad" DNS server is listed in the netmon trace. For example, if Exchange points to internal DNS server(s) for name resolution and these DNS servers service these DNS queries by Exchange, you may need a netmon on the DNS server(s) as well to determine which DNS server/Forwarder/etc is at fault.
    Regards,
    Shahul Hameed Dasthagir
    Support Engineer | Enterprise Communications Support 

  • Performing an SCP lookup from a computer not in domain

    Hi everybody,
    I am using the code given by Microsoft (link: https://www.microsoft.com/en-us/download/details.aspx?id=13082 & https://msdn.microsoft.com/en-us/library/office/dn467395(v=exchg.150).aspx#bk_CodeExample) for SCP Record Lookup. Both links have same implementation.
    It works when the program is run from a computer in domain. But fails when the program is run from a computer not in domain. Kindly help me in solving this problem. Ask for clarifications if needed.
    Thanks & regards,
    Amit Jha

    Hi Glen,
    Using ADExplorer, I can login and search all containers in all three Active Directory.
    More information:
    Active directory is installed in the servers in colored boxes.
    1) If I run the program for SCP Record Lookup, in child1.parent1.com for parent1.com domain, then everything is fine.
    2) If I run the program for SCP Record Lookup, in child1.parent1.com for child2.parent1.com domain, then error is "There is no such object on the server."
    3) If I run the program for SCP Record Lookup, in child1.parent1.com for parent2.com domain, then error is "A referral was returned from the server."
    4) If I run the program for SCP Record Lookup, in child2.parent1.com for child2.parent1.com domain, then everything is fine.
    5) If I run the program for SCP Record Lookup, in child2.parent1.com for parent1.com domain, then error is "A referral was returned from the server."
    6) If I run the program for SCP Record Lookup, in child2.parent1.com for parent2.com domain, then error is "A referral was returned from the server."
    7) If I run the program for SCP Record Lookup, in child.parent2.com for parent2.com domain, then everything is fine.
    8) If I run the program for SCP Record Lookup, in child.parent2.com for parent1.com domain, then error is "A referral was returned from the server."
    9) If I run the program for SCP Record Lookup, in child.parent2.com for child2.parent1.com domain, then error is "A referral was returned from the server."

  • Is there a way to specify a number of vlookup results?

    I'm trying to make a kind of loose pivot-table-like date record lookup. Probably best if I show something analogous to what I'm wanting:
    Table1
    Date
    BookRead
    1/1/13
    Les Miserables
    1/2/13
    The Hunchback of Notre Dame
    1/3/13
    Les Miserables
    1/4/13
    The Phantom of the Opera
    1/5/13
    Don Quixote
    1/6/13
    The Hunchback of Notre Dame
    1/7/13
    War and Peace
    1/8/13
    Les Miserables
    1/9/13
    Les Miserables
    1/10/13
    The Phantom of the Opera
    1/11/13
    Les Miserables
    1/12/13
    Don Quixote
    1/14/13
    The Hunchback of Notre Dame
    1/15/13
    Les Miserables
    In a separate table, I want to be able to pull the data this way, from most recent (Date1) to least (Date4):
    Table2
    BookRead
    Date1
    Date2
    Date3
    Date4
    Don Quixote
    1/12/13
    1/5/13
    Les Miserables
    1/15/13
    1/11/13
    1/9/13
    1/8/13
    The Hunchback of Notre Dame
    1/14/13
    1/6/13
    1/2/13
    The Phantom of the Opera
    1/10/13
    1/4/13
    War and Peace
    1/7/13
    The results in each row need to be the most recent four instances for that book(e.g., "Les Miserables" should only return the last four instances and disregard any more) and only the results for that book.
    I've been trying to rack my brain on how to dynamically limit the range of rows for a VLOOKUP: that is, in each row of Table2:
    - Date1: VLOOKUP for last instance as usual (which will return the bottom-most result)
    - Date2: VLOOKUP for last instance prior to the row found in Date1
    - Date3: VLOOKUP for last instance prior to the row found in Date2
    - Date4: VLOOKUP for last instance prior to the row found in Date3
    I've already tried category tables; it doesn't come close to what I want. Heck, VLOOKUP may not even be the way to go.
    I'm concerned this will create an ENORMOUS amount of calculations, as the lookup table (Table2) I need to add this feature to currently has over 2700 rows, and the source table (Table1) it will compute from has over 1400. (That's right, I will be testing a TON of items in the first table that will have no instance at all in the second--that is, I want to test for way more "books" than are even used in the record. I know this seems backwards, but humor me.)
    Is this doable, or am I delusional?

    Hello
    Here's something you may try. Not sure at all, though, whether this works acceptably fast for thousands of entries.
    Table 2 will retieve unique book titles from Table 1 by using row indices in Table 1 :: E. If you're using independent table with unique book titles to retrieve data from Table 1, Table 1 :: E is not necessary and you can simply replace the formulae in Table 2 :: A with the unique book titles.
    Table 1 works as follows.
    1) In column C, count the occurence of each book title in column B after the current date in column A.
    2) In column D, build string TITLE[k], where TITLE = title in column A, k = number of occurence in column C.
    3) In column E, retrive the row indices where k = 1 in column C (i.e., row indices of most recently read books).
    Table 2 works as follows.
    1) In column A, retrieve the (unique) book titles in rows whose indices are listed in Table 1 :: E.
    2) In column B, retiieve date in Table 1 :: A for TITLE[1] in Table 1 :: D, where TITLE = title in column A.
    3) In column C, retiieve date in Table 1 :: A for TITLE[2] in Table 1 :: D, where TITLE = title in column A.
    4) In column D, retiieve date in Table 1 :: A for TITLE[3] in Table 1 :: D, where TITLE = title in column A.
    5) In column E, retiieve date in Table 1 :: A for TITLE[4] in Table 1 :: D, where TITLE = title in column A.
    # Table 1
    A1  Date
    A2  2013-01-01
    A3  2013-02-01
    A4  2013-03-01
    A5  2013-04-01
    A6  2013-05-01
    A7  2013-06-01
    A8  2013-07-01
    A9  2013-08-01
    A10 2013-09-01
    A11 2013-10-01
    A12 2013-11-01
    A13 2013-12-01
    A14 2013-12-02
    A15 2013-12-03
    B1  BookRead
    B2  Les Miserables
    B3  The Hunchback of Notre Dame
    B4  Les Miserables
    B5  The Phantom of the Opera
    B6  Don Quixote
    B7  The Hunchback of Notre Dame
    B8  War and Peace
    B9  Les Miserables
    B10 Les Miserables
    B11 The Phantom of the Opera
    B12 Les Miserables
    B13 Don Quixote
    B14 The Hunchback of Notre Dame
    B15 Les Miserables
    C1  k
    C2  =COUNTIF(OFFSET($B$1,ROW($B2)-1,0,ROWS($B)-ROW($B2)+1,1),$B2)
    C3  =COUNTIF(OFFSET($B$1,ROW($B3)-1,0,ROWS($B)-ROW($B3)+1,1),$B3)
    C4  =COUNTIF(OFFSET($B$1,ROW($B4)-1,0,ROWS($B)-ROW($B4)+1,1),$B4)
    C5  =COUNTIF(OFFSET($B$1,ROW($B5)-1,0,ROWS($B)-ROW($B5)+1,1),$B5)
    C6  =COUNTIF(OFFSET($B$1,ROW($B6)-1,0,ROWS($B)-ROW($B6)+1,1),$B6)
    C7  =COUNTIF(OFFSET($B$1,ROW($B7)-1,0,ROWS($B)-ROW($B7)+1,1),$B7)
    C8  =COUNTIF(OFFSET($B$1,ROW($B8)-1,0,ROWS($B)-ROW($B8)+1,1),$B8)
    C9  =COUNTIF(OFFSET($B$1,ROW($B9)-1,0,ROWS($B)-ROW($B9)+1,1),$B9)
    C10 =COUNTIF(OFFSET($B$1,ROW($B10)-1,0,ROWS($B)-ROW($B10)+1,1),$B10)
    C11 =COUNTIF(OFFSET($B$1,ROW($B11)-1,0,ROWS($B)-ROW($B11)+1,1),$B11)
    C12 =COUNTIF(OFFSET($B$1,ROW($B12)-1,0,ROWS($B)-ROW($B12)+1,1),$B12)
    C13 =COUNTIF(OFFSET($B$1,ROW($B13)-1,0,ROWS($B)-ROW($B13)+1,1),$B13)
    C14 =COUNTIF(OFFSET($B$1,ROW($B14)-1,0,ROWS($B)-ROW($B14)+1,1),$B14)
    C15 =COUNTIF(OFFSET($B$1,ROW($B15)-1,0,ROWS($B)-ROW($B15)+1,1),$B15)
    D1  book[k]
    D2  =B2&"["&C2&"]"
    D3  =B3&"["&C3&"]"
    D4  =B4&"["&C4&"]"
    D5  =B5&"["&C5&"]"
    D6  =B6&"["&C6&"]"
    D7  =B7&"["&C7&"]"
    D8  =B8&"["&C8&"]"
    D9  =B9&"["&C9&"]"
    D10 =B10&"["&C10&"]"
    D11 =B11&"["&C11&"]"
    D12 =B12&"["&C12&"]"
    D13 =B13&"["&C13&"]"
    D14 =B14&"["&C14&"]"
    D15 =B15&"["&C15&"]"
    E1  i[k=1]
    E2  =MATCH(1,$C,0)
    E3  =IFERROR(E2+MATCH(1,OFFSET($C$1,E2,0,ROWS($C)-E2,1),0),"")
    E4  =IFERROR(E3+MATCH(1,OFFSET($C$1,E3,0,ROWS($C)-E3,1),0),"")
    E5  =IFERROR(E4+MATCH(1,OFFSET($C$1,E4,0,ROWS($C)-E4,1),0),"")
    E6  =IFERROR(E5+MATCH(1,OFFSET($C$1,E5,0,ROWS($C)-E5,1),0),"")
    E7  =IFERROR(E6+MATCH(1,OFFSET($C$1,E6,0,ROWS($C)-E6,1),0),"")
    E8  =IFERROR(E7+MATCH(1,OFFSET($C$1,E7,0,ROWS($C)-E7,1),0),"")
    E9  =IFERROR(E8+MATCH(1,OFFSET($C$1,E8,0,ROWS($C)-E8,1),0),"")
    E10 =IFERROR(E9+MATCH(1,OFFSET($C$1,E9,0,ROWS($C)-E9,1),0),"")
    E11 =IFERROR(E10+MATCH(1,OFFSET($C$1,E10,0,ROWS($C)-E10,1),0),"")
    E12 =IFERROR(E11+MATCH(1,OFFSET($C$1,E11,0,ROWS($C)-E11,1),0),"")
    E13 =IFERROR(E12+MATCH(1,OFFSET($C$1,E12,0,ROWS($C)-E12,1),0),"")
    E14 =IFERROR(E13+MATCH(1,OFFSET($C$1,E13,0,ROWS($C)-E13,1),0),"")
    E15 =IFERROR(E14+MATCH(1,OFFSET($C$1,E14,0,ROWS($C)-E14,1),0),"")
    # Table 2
    A1  book
    A2  =IFERROR(INDEX(Table 1::$B,Table 1::E2,1),"")
    A3  =IFERROR(INDEX(Table 1::$B,Table 1::E3,1),"")
    A4  =IFERROR(INDEX(Table 1::$B,Table 1::E4,1),"")
    A5  =IFERROR(INDEX(Table 1::$B,Table 1::E5,1),"")
    A6  =IFERROR(INDEX(Table 1::$B,Table 1::E6,1),"")
    A7  =IFERROR(INDEX(Table 1::$B,Table 1::E7,1),"")
    A8  =IFERROR(INDEX(Table 1::$B,Table 1::E8,1),"")
    A9  =IFERROR(INDEX(Table 1::$B,Table 1::E9,1),"")
    B1  date[i[k=1]]
    B2  =IFERROR(INDEX(Table 1::$A,MATCH($A2&"[1]",Table 1::$D,0),0),"")
    B3  =IFERROR(INDEX(Table 1::$A,MATCH($A3&"[1]",Table 1::$D,0),0),"")
    B4  =IFERROR(INDEX(Table 1::$A,MATCH($A4&"[1]",Table 1::$D,0),0),"")
    B5  =IFERROR(INDEX(Table 1::$A,MATCH($A5&"[1]",Table 1::$D,0) ,0) ,"")
    B6  =IFERROR(INDEX(Table 1::$A,MATCH($A6&"[1]",Table 1::$D,0) ,0) ,"")
    B7  =IFERROR(INDEX(Table 1::$A,MATCH($A7&"[1]",Table 1::$D,0) ,0) ,"")
    B8  =IFERROR(INDEX(Table 1::$A,MATCH($A8&"[1]",Table 1::$D,0) ,0) ,"")
    B9  =IFERROR(INDEX(Table 1::$A,MATCH($A9&"[1]",Table 1::$D,0) ,0) ,"")
    C1  date[i[k=2]]
    C2  =IFERROR(INDEX(Table 1::$A,MATCH($A2&"[2]",Table 1::$D,0),0),"")
    C3  =IFERROR(INDEX(Table 1::$A,MATCH($A3&"[2]",Table 1::$D,0),0),"")
    C4  =IFERROR(INDEX(Table 1::$A,MATCH($A4&"[2]",Table 1::$D,0),0),"")
    C5  =IFERROR(INDEX(Table 1::$A,MATCH($A5&"[2]",Table 1::$D,0),0),"")
    C6  =IFERROR(INDEX(Table 1::$A,MATCH($A6&"[2]",Table 1::$D,0) ,0) ,"")
    C7  =IFERROR(INDEX(Table 1::$A,MATCH($A7&"[2]",Table 1::$D,0) ,0) ,"")
    C8  =IFERROR(INDEX(Table 1::$A,MATCH($A8&"[2]",Table 1::$D,0) ,0) ,"")
    C9  =IFERROR(INDEX(Table 1::$A,MATCH($A9&"[2]",Table 1::$D,0) ,0) ,"")
    D1  date[i[k=3]]
    D2  =IFERROR(INDEX(Table 1::$A,MATCH($A2&"[3]",Table 1::$D,0),0),"")
    D3  =IFERROR(INDEX(Table 1::$A,MATCH($A3&"[3]",Table 1::$D,0),0),"")
    D4  =IFERROR(INDEX(Table 1::$A,MATCH($A4&"[3]",Table 1::$D,0),0),"")
    D5  =IFERROR(INDEX(Table 1::$A,MATCH($A5&"[3]",Table 1::$D,0) ,0) ,"")
    D6  =IFERROR(INDEX(Table 1::$A,MATCH($A6&"[3]",Table 1::$D,0) ,0) ,"")
    D7  =IFERROR(INDEX(Table 1::$A,MATCH($A7&"[3]",Table 1::$D,0) ,0) ,"")
    D8  =IFERROR(INDEX(Table 1::$A,MATCH($A8&"[3]",Table 1::$D,0) ,0) ,"")
    D9  =IFERROR(INDEX(Table 1::$A,MATCH($A9&"[3]",Table 1::$D,0) ,0) ,"")
    E1  date[i[k=4]]
    E2  =IFERROR(INDEX(Table 1::$A,MATCH($A2&"[4]",Table 1::$D,0),0),"")
    E3  =IFERROR(INDEX(Table 1::$A,MATCH($A3&"[4]",Table 1::$D,0) ,0) ,"")
    E4  =IFERROR(INDEX(Table 1::$A,MATCH($A4&"[4]",Table 1::$D,0),0),"")
    E5  =IFERROR(INDEX(Table 1::$A,MATCH($A5&"[4]",Table 1::$D,0) ,0) ,"")
    E6  =IFERROR(INDEX(Table 1::$A,MATCH($A6&"[4]",Table 1::$D,0) ,0) ,"")
    E7  =IFERROR(INDEX(Table 1::$A,MATCH($A7&"[4]",Table 1::$D,0) ,0) ,"")
    E8  =IFERROR(INDEX(Table 1::$A,MATCH($A8&"[4]",Table 1::$D,0) ,0) ,"")
    E9  =IFERROR(INDEX(Table 1::$A,MATCH($A9&"[4]",Table 1::$D,0) ,0) ,"")
    Hope this may help,
    H

  • Microsoft Outlook 2010 & 2013 cannot set automatic reply settings

    Hello,
    We cannot seem to set automatic reply's within outlook 2010 & 2013.  We have an exchange server 2010.  We
    can setup automatic reply through OWA absolutely fine.   The error that we receive is 'Your automatic reply settings cannot be displayed because the server is currently unavailable.  Try again later.
    However we can setup out of office on any other office version below 2010 fine.    We have run through
    a number of tests and have come to the conclusion that the auto discover service is not configured correctly.   I have been told to run through the following
    "We need to make sure the IIS service is assigned to the certificate which includes mail.mydomainname.co.uk
    name:
    Enable-ExchangeCertificate -Thumbprint 62C247B3BD081D0A8B074D4A928A76E6DA3BABBA -Services
    POP,IMAP,SMTP,IIS
    Then restart IIS service
    to apply the changes.
    If the user is connect
    to mailbox from external environment as your test results, it is recommended to add the autodiscover.mydomain.co.uk name in your certificate with IIS service. If so, the autodiscover
    service can be accessed successfully in your posted second steps(https:/autodiscover.mydomain.co.uk/autodiscover/autodiscover.xml). Alternatively, if you don’t want to change your certificate configuration, we need to create a new SRV record for mail.mydomainname.co.uk
    to make your autodiscover succeed in last steps of Srv Record lookup method".
    So I followed this and opened Exchange Managemnet Shell and ran the following.....
    'Enable-ExchangeCertificate -Thumbprint 62C247B3BD081D0A8B074D4A928A76E6DA3BABBA -Services POP,IMAP,SMTP,IIS'
    The following output was displayed:
    "VERBOSE: Connecting to SERVER2011.EXCHANGE.local
    VERBOSE: Connected to SERVER2011.EXCHANGE.local.
    [PS] C:\Windows\system32>Enable-ExchangeCertificate -Thumbprint 62C247B3BD081D0A8B074D4A928A76E6DA3BABBA -Services POP,I
    MAP,SMTP,IIS
    WARNING: This certificate will not be used for external TLS connections with an FQDN of 'SERVER2011.EXCHANGE.local'
    because the CA-signed certificate with thumbprint '71ADF367E190E269C1036BBF4A09C55E62536791' takes precedence. The
    following receive/send connectors match that FQDN: Default SERVER2011.
    WARNING: This certificate will not be used for external TLS connections with an FQDN of
    'mail.companyname.co.uk' because the CA-signed certificate with thumbprint
    '67ECB1A383CBD05424C58F6A5E753C9377F49D3D' takes precedence. The following receive/send connectors match that FQDN:
    Windows SBS Internet Receive SERVER2011, Fax/Printer.
    Confirm
    Overwrite the existing default SMTP certificate?
    Current certificate: '67ECB1A383CBD05424C58F6A5E753C9377F49D3D' (expires 09/08/2015 09:06:17)
    Replace it with certificate: '62C247B3BD081D0A8B074D4A928A76E6DA3BABBA' (expires 06/08/2015 17:05:22)
    [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [?] Help (default is "Y"):"
    I opened up 'Internet Information
    Services (IIS) Manager to find 2 Server Certificates issues to 'mail.companyname'
    with the certificate hash' 62C247B3BD081D0A8B074D4A928A76E6DA3BABBA' and '71ADF367E190E269C1036BBF4A09C55E62536791'.
    I opened up the Exchange Management
    Console to confirm that the IMAP, POP, IIS, and SMTP services are bound to both of the certificates for 'mail.companyname'.co.uk
    I need to know if it is okay to proceed in replacing the certificate and running this
    command.
    Thank you

    Hi,
    We have this problem with some of our users, in that they get the server unavailable error when trying to activate the out of office.
    In our case this is because the Proxy is blocking the connection from the PC to the Exchange, so we just go to Internet Options - Connections - LAN Settings - Advanced (under proxy server) then just add *.domain.com into the Exceptions box at the bottom.
    This seems to resolve the issue and allow them to set their out of office. The only reason this reoccurs for these users is because their roaming profile for some reason won't save the proxy settings, which is a different issue.
    Hope this helps.

  • XServe Mail Server not receiving emails from our phone system

    Hi everyone,
    Since late last year, staff haven't been receiving email notificiations to their work email (hosted by a 10.5.8 Xserve) of voice mail received by our 3COM NBX Phone System. However, if they provide any other email account, such as a Gmail account, they receive the email fine.
    Our firewall providers have confirmed that there is nothing stopping the emails going in and out on their end. I've checked the server mail logs and can't find anything of value.
    According to a forum thread, this is how our mail system sends an off-site notification via email:
    1 - NCP performs an MX record lookup using DNS server IP information to return a valid TCP/IP address for each message being sent
    2 - NCP acts as an MTA (Message Transfer Agent) - will directly contact each destination mail server for local delivery
    3 - NCP establishes a TCP socket to the resolved TCP/IP address on SMTP port 25
    4 - NCP must be able to open a TCP session to the resolved IP address of each destination email server
    5 - Each destination server the NBX is sending email to may be configured for a rule base and based on certain criteria my reject an email or attachment that other email servers accept.
    I'd appreciate any help you can provide.
    Thankyou,
    Rhys

    I have no way of issuing that command from the "netSet".
    Below is the link I found of the self service article on troubleshooting offsite notifications:
    http://knowledge.3com.com/service/main.jsp;jsessionid=5CC7B2440667382AC7190A9665 9AC61D.selfservice1?t=solutionTab&ft=searchTab&ps=solutionPanels&locale=enUS&_dyncharset=UTF-8&curResURL=%2Fservice%2Fmain.jsp%3Bjsessionid%3D5CC7B2440667 382AC7190A96659AC61D.selfservice1%3FSearchButton%3DFind%26_dyncharset%3DUTF-8%26 locale%3DenUS%26t%3DsearchTab%26useFocusTopic%3Dtrue%26focusTopic%3D9029739%26searchstring% 3DNBX%252520-%252520Is%252520NAT%252520Supported%253f%26sfield%3D%26dosearch%3Dt rue%26pn%3D4&solutionId=1802&isSrch=Yes
    I've tested the internal settings, the dig as we've established, and I've checked the server logs - they don't seem to show anything relating to the nbx.
    The firewall has port 25 open to our mail server and phone system only.
    -Rhys

  • Server not receiving email

    I am having problems getting my mail server to receive any mail.
    The MX record was set up 3 days ago, but an MX record lookup shows it as
    0 www.sciencematrix.com
    so it should work, right? Does the 'www' at the front mess it up at all?
    Checking the account from an email client does not give any errors, but messages sent to it never show up.
    postconf -n gives me:
    alias_maps = hash:/etc/aliases,hash:/var/mailman/data/aliases
    command_directory = /usr/sbin
    config_directory = /etc/postfix
    daemon_directory = /usr/libexec/postfix
    debugpeerlevel = 2
    enableserveroptions = yes
    html_directory = no
    inet_interfaces = all
    mail_owner = postfix
    mailboxsizelimit = 0
    mailbox_transport = cyrus
    mailq_path = /usr/bin/mailq
    manpage_directory = /usr/share/man
    messagesizelimit = 1048576
    mydestination = $myhostname,localhost.$mydomain,localhost,sciencematrix.com,www.sciencematrix.c om
    mydomain = sciencematrix.com
    mydomain_fallback = localhost
    myhostname = sciencematrix.com
    mynetworks_style = host
    newaliases_path = /usr/bin/newaliases
    ownerrequestspecial = no
    queue_directory = /private/var/spool/postfix
    readme_directory = /usr/share/doc/postfix
    recipient_delimiter = +
    sample_directory = /usr/share/doc/postfix/examples
    sendmail_path = /usr/sbin/sendmail
    setgid_group = postdrop
    smtpdtls_keyfile =
    unknownlocal_recipient_rejectcode = 550
    What could be wrong here?
    How can I send an email from the command line, to make sure the mailboxes are set up correctly?

    Perhaps it should work.
    There's quite a number of variables here and we'll need far more detail to be able to help you
    Some questions: POP or IMAP is enabled, as is SMTP in Server Admin ?
    What does: hostname
    return (answer with) ?
    If you're behind a router, have you assigned port-forwarding and checked your firewall rules ? And if so, have you configured internal DNS ?
    What do you see in /var/log/mail.log and /var/log/system.log for a time-period in which you were expecting incoming mail ?
    A couple other things:
    Your mailserver shouldn't really be calling itself "www" anything, that's web services not mail.
    You can in fact configure DNS such that your machine is sciencematrix.com
    with it also answering for mail.sciencematrix.com and www.sciencematrix.com
    Try the following:
    telnet sciencematrix.com 25
    if you don't get an answer try
    telnet your.servers.ip 25
    You should see:
    Connected to www.sciencematrix.com.
    Escape character is '^]'.
    220 sciencematrix.com ESMTP Postfix
    From there, reference here:
    http://www.metaconsultancy.com/whitepapers/smtp.htm
    (just the part on testing via telnet)

  • Users are not able to use Outlook 2010 to view free/busy information and cannot set Out Of Office automatic reply

    Hi All,
    Please help me.
    I have an issue where users are not able to use Outlook 2010 to view free/busy information and cannot set Out Of Office automatic reply. But they are can set Out Of Office automatic reply from OWA. My exchange server is Ms Exchange 2010.
    The test E-mail AutoConfiguration failed with this error:
    Autodiscover to https://mydomain.com/autodiscover/autodiscover.xml starting
    GetLastError=12175; httpStatus=0.
    Autodiscover to https://mydomain.com/autodiscover/autodiscover.xml Failed (0x800C8203)
    Autodiscover to https://autodiscover.mydomain.com/autodiscover/autodiscover.xml starting
    GetLastError=12007; httpStatus=0.
    Autodiscover to https://autodiscover.mydomain.com/autodiscover/autodiscover.xml Failed (0x800C8203)
    Local autodiscover for mydomain.com starting
    Local autodiscover for mydomain.com Failed (0x8004010F)
    Redirect check to http://autodiscover.mydomain.com/autodiscover/autodiscover.xml starting
    Srv Record lookup for http://autodiscover.mydomain.com/autodiscover/autodiscover.xml Failed (0x80072EE7)
    Srv Record lookup for mydomain.com starting
    Srv Record lookup for mydomain.com Failed (0x8004010F)
    Any idea?
    Thanks,
    Pieter

    OK.
    Please follow this step.
    1. As you said you are in coexistence step , so for now all endpoint already point to Exchange 2010 right?
    2. Check legacy owa redirect that you already configure
    3. In Exchange 2010 , Make sure that you already configure "Autodiscoverinternaluri" by this command set-clientaccessserver -identity "servername" -autodiscoverinternaluri
    https://autodiscover.domain.com/autodiscover/autodiscover.xml. and don't forget to create autodiscover record in DNS
    4. in Exchange 2010 , Make sure that you already configure "EWS" path by this command set-webservicesvertualdirectory -identity "XXX\Default web site name" -internalurl
    https://yourinternalurl/EWS/Exchange.asmx -externalurl https://yourexternalurl/EWS/Exchange.asmx
    5. don't forget to replicate freebusy from Exchange 2003 to Excahnge 2010 via public folder.
    You error look like client cannot get autodiscover process please check it again.

  • Free/Busy not working after mailbox migration to Exchange 2013

    I'm in the process of migrating user mailboxes from Exchange 2007 to Exchange 2013
    It seems that many of the users (not all) are having problems seeing free/busy once they have been migrated.  If we remove the Outlook profile and recreate it, all is good.  Problem is that this is happening to more and more people.  Everyone
    is on Outlook 2010
    Test-OutlookWebServices -ClientAccessServer Ex2013 -identity MyName -MailboxCredential $cred    Results in:
     Autodiscover: Outlook Provider Failure
     Exchange Web Services          Failure
     Availability Service           Skipped
     Offline Address Book           Failure
    The same if I run that command against the Exchange 2007 server.
    What am I doing wrong?

    I should have mentioned that.  Yes, OWA works perfectly for the affected users.  Just as deleting their Outlook profile and recreating a new one does.
    Results of Get-WebServicesVirtualDirectory:
    Identity    : Exch2007Srvr\EWS (Default Web Site)
    InternalUrl : https://legacy.company.com/EWS/Exchange.asmx
    ExternalUrl : https://legacy.company.com/EWS/Exchange.asmx
    Identity    : Exch2013Srvr\EWS (Default Web Site)
    InternalUrl : https://mail.company.com/ews/exchange.asmx
    ExternalUrl : https://mail.company.com/ews/exchange.asmx
    The URL you reference above is actually the site I used to perform migration.
    What's interesting (at least to me) is that on my machine I did not have any issues with seeing calendars. The Test E-mail AutoConfiguration (without Guessmart), I get prompted for my password over and over; however, after clicking on cancel I
    get:
    Attempting URL
    https://mail.company.com/autodiscover/autodisconver.xml found through SCP
    Autodiscover to
    https://mail.company.com/autodiscover/autodisconver.xml starting
    GetLastError=0;httpStatus=401
    GetLastError=0;httpStatus=401
    GetLastError=0;httpStatus=401
    GetLastError=0;httpStatus=401
    GetLastError=0;httpStatus=401
    Autodiscover to 
    https://mail.company.com/autodiscover/autodisconver.xml Failed (0x80040413)
    Attempting URL 
    https://autodiscover.company.com/autodiscover/autodisconver.xml found through SCP
    Autodiscover to
    https://autodiscover.company.com/autodiscover/autodisconver.xml starting
    GetLastError=0; httpStatus=200.
    Autodiscover to
    https://autodiscover.company.com/autodiscover/autodisconver.xml Failed (0x800C8203)
    Autodiscover to https://company.local/autodiscover/autodiscover.xml starting
    GetLastError=12029; httpStatus=0
    Autodiscover to https://company.local/autodiscover/autodisconver.xml Failed (0x80004005)
    Autodiscover to
    https://autodiscover.company.local/autodiscover/autodisconver.xml starting
    GetLastError=0; httpStatus=0
    GetLastError=0; httpStatus=200
    Autodiscover to
    https://autodiscover.company.local/autodiscover/autodisconver.xml Failed (0x800C8203)
    Local autodiscover for company.local starting
    Local autodiscover for company.local Failed (0x8004010F)
    Redirect check to
    https://autodiscover.company.local/autodiscover/autodisconver.xml starting
    Redirect check to
    https://autodiscover.company.local/autodiscover/autodisconver.xml Failed (0x800C820D)
    Srv Record lookup for hydraforce.ads starting
    Srv Record lookup for hydraforce.ads Failed(0x8004010F)
    However, when I did this on a system that cannot see any calendars, it all works perfectly.
    Browsing to
    https://autodiscover.hydraforce.com/autodiscover/autodiscover.xml does result in Error Code 600

  • How to chek if the username has been taken

    hi all,
    i have a swing panel to indicate user to create his account by entering his user name, password and other data.
    how can i implement the program to check if the user name has been taken
    , then go back to tell user that his user name can not be taken.
    otherwise, go on the store whole data entered by the user.
    thanks

    Sorry I forgot to mention speed is just not an issue
    on a single record lookup.
    rykk
    so it means if you want to check a single record exists or not in db > for 100 times, either you will create a new database connection 100
    times or you will use the connection from pool, I think both the
    cases are slower than doing a lookup in hashtable. Of course it is slower. The point is it does not matter if it is slower as users will be logging on 1 at a time over a period of time. The time to establish a connection (assuming you are not using connection pooling), query for a single record and close the connection is exceptionally quick. This is assuming you have a server that is even close to adquate. The only time to worry is if your server is loaded beyond capacity and any query is degrading other user functions. In normal systems the user will be interacting with the database in all the various functions they perform - it is much more important to worry about efficency in these functions.
    rykk

  • Perl manipulator Cloning

    Hi friends
    I am trying to clone the records present in the application using perl manipulator.
    To the cloned records,I need to add a new property which is a combination of 2 properties,product id and group name.Product id is an existing property and group name is a new property to be created and should be added to the cloned records as well as existing set of records.
    I am trying to use the following code in get_records() of perl manipulator but the records are being removed once processed by baseline update.
    Can,anyone please help me on this?
    Here is the code am using.Please correct if there is anything wrong.I am not much sure of the syntax.
    EX:
    Records before:
    product_id:123
    Sku_id:456
    Cat_id:888
    Records after passing through perl manipulator:
    product_id:123
    Sku_id:456
    Cat_id:888
    group_name:A
    product_key:123_A
    product_id:123
    Sku_id:456
    Cat_id:888
    group_name:B
    product_key:123_B
    product_id:123
    Sku_id:456
    Cat_id:888
    group_name:C
    product_key:123_C
    product_id:123
    Sku_id:456
    Cat_id:888
    group_name:D
    product_key:123_D
    product_id:123
    Sku_id:456
    Cat_id:888
    group_name:X
    product_key:123_X
    my @recs;
    foreach my $src ( $this->record_sources ) {
    my @productData = $src->get_records($key);
    foreach my $rec ( @productData ) {
    foreach my $groupnames(A,B,C,D,E,X){
    # clone the record
    # add product_key property to the cloned record
    # push the cloned record into @recs
    # Psudo code starts
    my $clone = $rec->clone;
    my $productId = grep { $clone ->name eq 'product_id' } @{ $clone->pvals };
    my $groupName= grep { $clone ->name eq 'group_name' } @{ $clone->pvals };
    my $productkey = $properties{"product_id"}."_".$properties{"group_name"};
    my $pval = new EDF::PVal("product_key", $productId."_".$groupName);
    $rec->add_pvals($pval);
    # Psudo code ends
    return @recs;
    Edited by: Shreyas Ram R on Nov 10, 2012 10:33 PM
    Edited by: Shreyas Ram R on Nov 10, 2012 10:37 PM
    Edited by: Shreyas Ram R on Nov 10, 2012 10:38 PM

    I'd do this a different way. If you are cloning all records in a feed, then read the records in twice - once as normal, then another set of record adapter(s). The second set goes into an XML manipulator, and this modifies the properties (see the XML reference within Developer Studio, it looks quite complicated but is actually very easy once you get your head around an XML being used as a pseudo programming language). Finally, both sets of data go into a switch join (Record Assembler > Join Type = Switch).
    Reason for this approach is it'll be a lot faster than using a perl manipulator to create these duplicates, and a lot cleaner too. Thinking about it, you may be able to read in the data once, then send it to two separate record caches, manipulate the second cache, then feed both into the switch join. Not 100% sure if that is supported, but definitely worth trying first.
    Oh, and add a record spec - always a good idea, not least because it'll give you persistence of a unique id for record lookups (R=XYZ).
    Michael

  • Where to configure forced TLS

    Hello all
    Currently all of our mailboxes are located in O365. Our MX records point to EOP, and we have Centralized mail transport enabled. This means that all emails sent from mailboxes in O365 are
    routed from EOP to On-prem, and then from on-prem to the intended recipient. The email flow is below. From my understanding when a transport rule exist in EOP that has a address space of * (all domains) that this transport rule will take precedence over all
    other transport rules.  Example is if i create a transport rule that uses MX record lookup to send emails to Yahoo.com, and i also have a transport rule that has an address space of * and uses a smarthost, the email sent to Yahoo.com will be sent using
    the connector that has an address space of *.  Also as i said earlier all mailboxes are hosted in O365, if i need to send forced TLS to a certain domain, and because we have Centralized mail transport enabled then where should i configure the forced TLS?
     it doesn't make sense to try and configure this in EOP because all emails go through on-prem first. If you look at my below routing hops the last hop the email takes before it leaves the environment is the Symantec SMG servers. I think this is where
    i would need to configure foreced TLS to external domains. 
    user in O365 sends email to @gmail.com
    EOP----->on-prem Hybrid Server------->Symantec SMG server------->@Gmail.com
    Bulls on Parade

    Thank you. One more question for you. Regarding the sending server, do the names in the cert (CN) also need to be available on the internet? example send connector is configured to use forced TLS to BofA.com the send connectors that used to send email to
    BofA.com cert is a self signed cert. Does the Receiving server at BofA.com need to verify the name in the cert that was used to send the email to BofA.com ?
    Thank you again
    Bulls on Parade

Maybe you are looking for

  • Itunes stops responding for no apparent reason

    I have a new iPod (7th generation) that I am using iTunes to download from. My computer is a Dell Latitude 3540 running Windows 7 (64-bit) Professional Service Pack 1. My iTunes is version 11.3.1.2 (just downloaded yesterday as I was informed it was

  • To add a row in FBL1N

    hello , the scenario is : i hav to add a row in t-code FBL1N(Display Vendor line item) ,n the role of this row is to display the previous day's closing balance of the party. waiting for valuable replies......... thanks n regds abaper

  • Failing on video camera imports

    Have aJVC HD40 HD video camera 120gig model. IMovie09 fails after 25% of import. Have adjusted sleep settings and clean out PRAM. Camera works great on a PC with no problems backing up drive or importing video. On new 24" IMAC fails every time.

  • DoFilter() method is being called only at the second request

    Hi, I have implemented a simple Filter class Here is the code public class BasicFilter implements Filter FilterConfig config; public void init(FilterConfig config) System.out.println("Filter Initialised"); this.config = config; public void doFilter(S

  • RSA3 no possible

    My using standard 2LIS extractor to load the PO Item data into BW. I have peformed the Setup Table, and loaded the data into BW. Created the InfoPack to pull in Delta, everything seem to be OK. Now, for some reason, I need to test and see some PO Ite