2013-07-29 66 views
2

我寫了應用程序使用動態crm 2011,一個在c#中,另一個在php中的Web服務。他們都完美地工作。他們在crm中創造了新的領導者。 但有時,當我要鉛直接在CRM創建一個錯誤出現:「您的訂閱有可用的最大存儲量對於額外的存儲,......。」從crm 2011捕獲錯誤與nusoap

我的問題是這樣的錯誤是與C#應用程序處理,但與PHP應用程序沒有異常或錯誤拋出。

我用DynamicsCRM類(http://phpmscrm.codeplex.com/)延伸nusaop_client和createEntity()方法使用來自的NuSOAP()的調用方法:

//Create lead 
$crmSoap = new DynamicsCRM("$login","$pass"); 
if ($crmSoap->client->fault) { 
    header('Location: index.php?return=Fault'); 
} 
else{ 
    $err = $crmSoap->client->getError(); 
    if ($err) 
    { 
     header("Location: index.php?return=Error: $err"); 
    } 
    else { 
     $aLead=array(); 
     $aLead['subject'] = $_POST['topic']; 
     $aLead['firstname'] = $_POST['fname']; 
     $aLead['lastname'] = $_POST['lname']; 
     $aLead['companyname'] = $_POST['company']; 
     $aLead['emailaddress1'] = $_POST['email']; 
     $result = $crmSoap->createEntity('lead', $aLead); 
     header('Location: index.php?return=Lead created'); 
    } 
} 

我想知道如何從呼叫抓誤差( )方法:

$result = $crmSoap->createEntity('lead', $aLead); 
+0

你檢查過你的crm在線空間是否用完了嗎? –

回答

1

我正在使用相同的客戶端。它提供了一個可用於檢查錯誤的getError。因此,在每次檢查後:

if ($err= $crmSoap->getError()) 
    print_r($err) 

當然,您可能想要做的事情不只是迴應錯誤,但這就是主意。