2014-12-03 80 views
0

我想更新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

+0

要更新记录,您应遵循相同的步骤,提供带有**存在的** ID的记录。 – mudasobwa 2014-12-03 12:39:25

+0

可以给我一个例子...在XML中没有ID标签...所以如何提供ID? – user2609021 2014-12-03 12:52:05

+0

'CODE',而不是'ID'。这里的唯一标识符似乎是'CODE'。 – mudasobwa 2014-12-03 12:55:53

回答

0

首先,你不要在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>