title: Bloomberg Security Lookup Request
body: <p>In the Bloomberg API Developer’s Guide it reads:</p>
  
  <blockquote>
    <p>The Security Lookup [...] request constructs a search based upon the "query" element's string value, as well as the additional filters that you set [...]. This unctionality can also be found on the Bloomberg Professional service using the <strong>SECF &lt; GO ></strong> function.</p>
  </blockquote>
  
  <p>This is a simple snippet querying for IBM (C++, while I am actually targeting Java):</p>
  
  <pre><code>Service secfService = session.getService("//blp/instruments");
  Request request = secfService.createRequest("instrumentListRequest");
  request.asElement().setElement("query", "IBM");
  request.asElement().setElement("yellowKeyFilter", "YK_FILTER_CORP");
  request.asElement().setElement("languageOverride", "LANG_OVERRIDE_NONE");
  request.asElement().setElement("maxResults", 10);
  sendRequest(request, session);
  </code></pre>
  
  <p>With the <code>SECF</code> function I can set many other filters, such as the exchange, the country of domicile (which are also mapped in the <code>FLDS</code> function screen).  </p>
  
  <p>When I pass <code>("exchCode", "US")</code>, I get an error. </p>
  
  <blockquote>
    <p>com.bloomberglp.blpapi.NotFoundException: Element: exchCode not found in: InstrumentListRequest</p>
  </blockquote>
  
  <p>(I tried with <code>EXCH_CODE</code> too)</p>
  
  <p>How can I pass <code>SECF</code> filters to the <code>request</code> object?</p>