/** * Получене отчета * @param $inn * @return SimpleXMLElement */ public function Statement($inn) { $client = new SoapClient($this->wsdlUrl, array("trace" => 1, "exceptions" => 0)); $AuthCredentialHeader = array('UserName' => $this->UserName, 'Password' => $this->Password); $uthenticationIdentity = array("Name" => $this->Name, 'Key' => $this->Key); $headers = array(); $headers[] = new SoapHeader($this->url, 'AuthenticationCredential', $AuthCredentialHeader, 'false'); $headers[] = new SoapHeader($this->url, 'AuthenticationIdentity', $uthenticationIdentity, 'false'); $client->__setSoapHeaders($headers); $result = $client->Statement(array('forID' => $inn)); //проверка на соеденения // $this->prn($result); // $this->prn($result->faultcode); if (is_soap_fault($result)) { if ($result->faultcode == 'StatementFailed') { $this->result['zona'] = 1; $this->result['messege'] = 'Неправельный код ИНН.'; $this->result['status'] = false; return $this->result; } elseif ($result->faultcode == 'soap:Server') { $this->result['zona'] = 1; $this->result['messege'] = 'Ошибка при виполнении запроса в ПВБКИ'; $this->result['status'] = false; return $this->result; } } $arr = (array) $result; $load = simplexml_load_string($arr["Report-StatementResult"]); // $this->prn($load->); //проверка на данные if (isset($load->Contract) && !empty($load->Contract)) { $this->result['zona'] = 0; $this->result['messege'] = 'В базе ПВБКИ нет информации про клиента.'; $this->result['status'] = false; return $this->result; } //провенрка на ощибки //todo:реалезовать даный метод if ($this->debag) { $this->writeFile('tmp/PvbkiResult.xml', $arr["Report-StatementResult"]); } return $this->getOverdueAmount($load); }