MoneyWorks:以编程方式更新记录
问题描述:
我想更新MoneyWorks中的记录。我可以使用REST API创建,但我没有找到帮助来更新记录。MoneyWorks:以编程方式更新记录
进出口使用本文档http://cognito.co.nz/developer/moneyworks-datacentre-rest-api/
若要使用下面的代码记录IM和它工作
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://server/REST/username:[email protected]/import/table=name&format=xml-verbose");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
$result = curl_exec($ch);
curl_close($ch);
?>
其中$ XML是字符串输入XML。他们在文件中提到我们可以更新记录,但他们没有提供一个例子。
请帮助我使用REST API
答
首先,你不要在URL中指定表名和格式(你会使用那些出口,这是一个GET
)更新记录。 表名和其他导入参数被指定为xml中表元素的属性。要更新记录,请指定update="true"
。请参阅此处的文档http://cognito.co.nz/developer/xml-data-exchange/
例如,可以导入以下xml以更新SPRING的名称记录的一个字段。您可以通过复制xml并将其粘贴到MoneyWorks中的任何列表窗口中(调用MoneyWorks Gold 7.1.8及更高版本中的XML导入)来测试这一点。相同的XML将适用于REST导入。
<?xml version="1.0"?>
<table name="Name" update="true">
<name>
<code>SPRING</code>
<contact>New contact name</contact>
</name>
</table>
要更新记录,您应遵循相同的步骤,提供带有**存在的** ID的记录。 – mudasobwa 2014-12-03 12:39:25
可以给我一个例子...在XML中没有ID标签...所以如何提供ID? – user2609021 2014-12-03 12:52:05
'CODE',而不是'ID'。这里的唯一标识符似乎是'CODE'。 – mudasobwa 2014-12-03 12:55:53