我正在尝试将文档从 PHP 脚本添加到 Sugar 对象(客户端)。我有一个文件目录(在安装 SugarCRM 的同一台服务器上)和带有糖对象 ID 和文件名的 xls)。PHP 脚本应该将正确的文件名添加到特定的糖对象(用 ID 标识)。我可以读取 XLS 这没问题,我也可以获取糖对象的实例(通过 ID 检索),但我不知道如何将文件分配给糖。我正在尝试使用 Document 和 upload_file.php,但这些似乎可用于使用 html 表单上传单个文件。
如何自动执行此任务,将具有正确文件名的文件复制cache\upload
到 PHP 脚本并创建与我的客户相关的文档?如果不需要,我宁愿不使用 SOAP...
编辑:
我能够保存文档和修订,但出现问题,无法从浏览器下载文件(“文件调用不正确”)
到目前为止,我的代码是:
require_once('include/upload_file.php');
$upload_file = new UploadFile('uploadfile');
$document->filename = 'robots.txt';
$document->document_name = 'robots.txt';
$document->save();
$contents = file_get_contents ($document->filename);
$revision = new DocumentRevision;
$revision->document_id = $document->id;
$revision->file = base64_encode($contents);
$revision->filename = $document->filename;
$revision->revision = 1;
$revision->doc_type = 'Sugar';
$revision->file_mime_type = 'text/plain';
$revision->save();
$document->revision_id = $revision->id;
$document->save();
$destination = clean_path($upload_file->get_upload_path($document->id));
$fp = sugar_fopen($destination, 'wb');
if( !fwrite($fp, $contents) ){
die("ERROR: can't save file to $destination");
}
fclose($fp);