2016-10-03 67 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

您可以关闭它,但最有可能的原因是它。尽量不要在代码中设置此列。最有可能的是它将被填充正确的值。 –