pquery($query); if($adb->num_rows($qresult) == 0) { // Не нашелся Контрагент - поищем Контакт. Причем с извращением - в базе ИННы почему-то хранятся с пробелами $query = "select c.contactid from vtiger_contactscf c left join vtiger_crmentity e on e.crmid = c.contactid where e.deleted = '0' and replace(c.cf_1257, ' ', '') = '".$inn."'"; $qresult = $adb->pquery($query); if($adb->num_rows($qresult) == 0) { // И Контакт по ИНН не найден - Платеж будет без привязки $logstring = date('Y-m-d H:i:s').' с ИНН '.$inn.' не найден ни Контакт, ни Контрагент - Платеж будет без привязки'.PHP_EOL; file_put_contents('logs/income.log', $logstring, FILE_APPEND); } else { $contactid = $adb->query_result($qresult, 0, 'contactid'); $payer = '12x'.$contactid; $logstring = date('Y-m-d H:i:s').' Найден Контакт с id = '.$contactid.PHP_EOL; file_put_contents('logs/income.log', $logstring, FILE_APPEND); } } else { $accountid = $adb->query_result($qresult, 0, 'accountid'); $payer = '11x'.$accountid; $logstring = date('Y-m-d H:i:s').' Найден Контрагент с id = '.$accountid.PHP_EOL; file_put_contents('logs/income.log', $logstring, FILE_APPEND); } $user = Users::getActiveAdminUser(); // Получаем пользователя, под которым будем создавать платеж $params = array ( 'pay_date' => date('Y-m-d'), 'pay_type' => 'Receipt', 'pay_details' => $description, 'type_payment' => 'Cashless Transfer', 'amount' => $amount, 'spstatus' => 'Executed', 'spcompany' => 'МОО "Клиентправ"', 'assigned_user_id' => '19x1' ); if (isset($payer)) { $params['payer'] = $payer; } $logstring = date("Y-m-d H:i:s").' Подготовлен массив для создания Платежа: '.json_encode($params).PHP_EOL; file_put_contents('logs/income.log', $logstring, FILE_APPEND); try { $payment = vtws_create('SPPayments', $params, $user); $output = 'Платеж создан: '.$payment['id']; } catch (WebServiceException $ex) { $output = $ex->getMessage(); } $logstring = date("Y-m-d H:i:s").' '.$output.PHP_EOL; file_put_contents('logs/income.log', $logstring, FILE_APPEND); echo "OK"; ?>