1

我正在尝试在两个模块之间创建关系,即 Accounts 和另一个我称之为“Estadisticos”的自定义模块,SuiteCRM 的最终模块名称是“Mk902_Estadisticos”。我已经通过 REST API 在模块中很好地插入了数据,但现在我正在尝试在这些记录与 Accounts 模块之间创建关系,并且我使用的代码与我在另一个模块之间成功使用的代码相同与帐户联系,但在这种情况下,我无法将其发回给我:

{“创建”:0,“失败”:1,“删除”:0}

这是适用于默认模块但不适用于自定义模块的代码

    Map<String, Object> tmpHash = new LinkedHashMap<String, Object>();
    List<String> tmpRelatedIds = new ArrayList<String>();
    tmpRelatedIds.add(aRelatedId);

    tmpHash.put("session", this.getSessionId());
    tmpHash.put("module_name", METHOD_NAME);
    tmpHash.put("module_id", anId);
    tmpHash.put("link_field_name", aMethodRelated.toLowerCase());
    tmpHash.put("related_ids", tmpRelatedIds);

    JSONObject tmpRetreivedData = this.callWS("set_relationship", tmpHash);

    if(tmpRetreivedData != null && tmpRetreivedData.size() > 0){
        System.out.println(tmpRetreivedData.toJSONString());
        return tmpRetreivedData;    
    }
    else{
        return null;
    }

也许我无法使用自定义模块通过 REST 创建关系?

注意:我正在用 JAVA 编码,但 PHP 帮助也很有用

非常感谢!

4

1 回答 1

2

我发现了问题,对于自定义模块,WebService 期待与此添加的“_accounts”相关的模块,例如,如果我们与 Accounts 相关

例如,如果您将联系人与客户相关联,“模块名称”应为“客户”,“链接字段名称”应为“联系人”,但如果您有自定义模块,例如“自定义”并且您正在设置与客户的关系,则应是这样的:'module_name''Accounts''link_field_name''custom_accounts'

于 2015-10-22T16:02:23.960 回答