function SalesLiterature_RetrieveAndAttach(emailID, salesliteratureID)
{
    // target
   
var serverUrl = "/MSCrmServices/2007/CrmService.asmx";
    var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    xmlhttp.open("POST", serverUrl, false);
    xmlhttp.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
    xmlhttp.setRequestHeader("SOAPAction", "http://schemas.microsoft.com/crm/2007/WebServices/RetrieveMultiple");
    // message
   
var message =
    [
    "<?xml version='1.0' encoding='utf-8'?>",
    "<soap:Envelope xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>",
    GenerateAuthenticationHeader(),
    "<soap:Body>",
    "<RetrieveMultiple xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>",
    "<query xmlns:q1='http://schemas.microsoft.com/crm/2006/Query' xsi:type='q1:QueryExpression'>",
    "<q1:EntityName>",
    "salesliteratureitem", // entity we're looking for
   
"</q1:EntityName>",
    "<q1:ColumnSet xsi:type='q1:ColumnSet'>",
    "<q1:Attributes>",
    "<q1:Attribute>filename</q1:Attribute>",
    "<q1:Attribute>filesize</q1:Attribute>",
    "<q1:Attribute>mimetype</q1:Attribute>",
    "<q1:Attribute>documentbody</q1:Attribute>",
    "</q1:Attributes>",
    "</q1:ColumnSet><q1:Distinct>true</q1:Distinct>",
    "<q1:Criteria><q1:FilterOperator>And</q1:FilterOperator>",
    "<q1:Conditions><q1:Condition><q1:AttributeName>",
    "salesliteratureid", // criteria is qryattributeName = qryattributeValue
    "</q1:AttributeName><q1:Operator>Equal</q1:Operator>"
,
    "<q1:Values><q1:Value xsi:type='xsd:string'>",
    salesliteratureID,
    "</q1:Value></q1:Values></q1:Condition></q1:Conditions></q1:Criteria>",
    "</query>",
    "</RetrieveMultiple>",
    "</soap:Body></soap:Envelope>"
   
].join("");
    xmlhttp.send(message);
    var resultXml = xmlhttp.responseXML;
    var results = resultXml.getElementsByTagName("BusinessEntity");
    if (results == null) return;
    if (results.length > 0)
    {
        var filename_str = '//q1:filename';
        var filesize_str = '//q1:filesize';
        var mimetype_str = '//q1:mimetype';
        var body_str = '//q1:documentbody';
        var filename;
        var filesize;
        var mimetype;
        var documentbody;
        // of we go
       
for (i = 0; i < results.length; i++)
        {   // find each entry
           
filename = results[i].selectSingleNode(filename_str).nodeTypedValue;
            filesize = results[i].selectSingleNode(filesize_str).nodeTypedValue;
            mimetype = results[i].selectSingleNode(mimetype_str).nodeTypedValue;
            documentbody = results[i].selectSingleNode(body_str).nodeTypedValue;
            SalesLiterature_AttachToEmail(emailID, i + 1, filename, filesize, mimetype, documentbody);
        }
    }
}