2016-10-03 68 views
0

我已經能夠在沒有外鍵的表上成功創建記錄,但在嘗試在具有外鍵的表上設置外鍵時仍然遇到錯誤「字段無法修改」第一張桌子的鑰匙。通過PHP API在表上設置外鍵的正確方法是什麼?Filemaker PHP外鍵

$data = array(
    "_fk_LeadID" => '24', 
    "Date" => "12/12/2016", 
    "Result" => "Still Investigating", 
    "Sales_Rep" => "Joe", 
    "Time" => "9:00PM" 
); 

$rec = $fm->createRecord('Appointments', $data); 
$result = $rec->commit(); 

if (FileMaker::isError($result)) { 
    echo "<p>Error: " . $result->getMessage() . "</p>"; 
    exit; 
} 

我正在瀏覽PHP文檔,它提到了門戶網站,但我沒有在這些表上設置一個設置,所以無法使用它們。什麼是在表上設置外鍵的正確方法?

回答

0

你的代碼很好,問題不是真正的PHP相關。 FileMaker PHP沒有任何用於創建外鍵或甚至主鍵的特殊功能。所以問題出在FileMaker Server端。

您有錯誤,其中一個字段不可修改。很可能它是一個計算字段(由觸發器填充的列)。我會嘗試在FileMaker中手動設置字段並查看它是否會給出相同的錯誤(我懷疑它會)。

如果您不能使用FileMaker,請僅使用_fk_LeadID創建一個記錄,並查看是否有錯誤,然後開始添加一個字段。引發錯誤的字段可能是一個計算。例如。日期和時間可以是自動填充記錄創建的日期和時間。

+0

錯誤似乎是由選項「禁止在數據輸入過程中修改值」引起的,有沒有辦法用此設置創建記錄? – Justin

+0

您可以關閉它,但最有可能的原因是它。儘量不要在代碼中設置此列。最有可能的是它將被填充正確的值。 –