title: Why Magento salesOrderInvoiceList is accepting store_id as a Complex filter?
body: <p>I must to update a code created by another programmer. 
  It uses php - SOAP to connect Magento.
  I was digging to understand what he did and I found a query using Complex Filter
  against <strong>sales_order_invoice.info</strong>.
  This is the Complex Filter:</p>
  
  <pre><code>$complexFilter = array(            
        'complex_filter' =&gt; array(
          array(
                 'key' =&gt; 'CREATED_AT',
                 'value' =&gt; array(
                     'key' =&gt; 'from',
                     'value' =&gt; '2015-10-16 01:24:37'
                 )
          ),
          array(
                 'key' =&gt; 'state',
                 'value' =&gt; array(
                     'key' =&gt; '=',
                     'value' =&gt; '2'
                 )
          ),
          array(
                 'key' =&gt; 'store_id',
                 'value' =&gt; array(
                     'key' =&gt; 'in',
                     'value' =&gt; '5,6'
                 )
          )
        )
  );
  </code></pre>
  
  <p>This is the code to connect:</p>
  
  <pre><code>$cli = new SoapClient("http://MYstaging.com/api/v2_soap/?wsdl");
  $username = 'myuser';
  $password = 'myPass';
  $session_id = $cli-&gt;login($username, $password);
  #$cli-&gt;__setCookie('XDEBUG_SESSION', 'netbeans-xdebug');      
  $result = $cli-&gt;salesOrderInvoiceList($session_id, $complexFilter);
  </code></pre>
  
  <p>As we can see, the query should retrieve some information from <strong>salesOrderInvoiceList</strong>, and it does.
  This is the result:</p>
  
  <pre><code>array (size=1)
    0 =&gt; 
      object(stdClass)[2]
        public 'increment_id' =&gt; string '500000001' (length=9)
        public 'created_at' =&gt; string '2015-10-16 20:07:18' (length=19)
        public 'order_currency_code' =&gt; string 'YYY' (length=3)
        public 'order_id' =&gt; string '9' (length=1)
        public 'state' =&gt; string '2' (length=1)
        public 'grand_total' =&gt; string '00.0000' (length=7)
        public 'invoice_id' =&gt; string '3' (length=1)
  </code></pre>
  
  <p>I do not understand this. If we check the Magendo doc to <a href="http://www.magentocommerce.com/api/soap/sales/salesOrderInvoice/sales_order_invoice.list.html" rel="nofollow">sales_order_invoice.list</a>, there is no <strong>store_id</strong>
  content or field. So it should not be possible to use it as a filter.
  But it does exists in the <a href="http://www.magentocommerce.com/api/soap/sales/salesOrderInvoice/sales_order_invoice.info.html" rel="nofollow"><strong>sales_order_invoice.info</strong></a>.</p>
  
  <p>Well, if I change "<strong>store_id</strong>" field for something that do not exist at all, 
  lets say "BLAH_BLAH" certainly I would have nothing as result. And it is what is happening. And it makes sense. Behind the scenes maybe we have a sql 1054 (Unknow column) error.</p>
  
  <pre><code>$complexFilter = array(            
        'complex_filter' =&gt; array(
          array(
                 'key' =&gt; 'CREATED_AT',
                 'value' =&gt; array(
                     'key' =&gt; 'from',
                     'value' =&gt; '2015-10-16 01:24:37'
                 )
          ),
          array(
                 'key' =&gt; 'state',
                 'value' =&gt; array(
                     'key' =&gt; '=',
                     'value' =&gt; '2'
                 )
          ),
          array(
                 'key' =&gt; 'BLAH_BLAH',
                 'value' =&gt; array(
                     'key' =&gt; 'in',
                     'value' =&gt; '5,6'
                 )
          )
        )
  );
  </code></pre>
  
  <p>Can someone explain why salesOrderInvoiceList is accepting store_id as filter?</p>