使用 apex 以编程方式将记录添加/发布到 salsforce 中的工作区/库

Swa*_*ati 3 salesforce visualforce apex-code

我创建了一个自定义的visualforce 页面。在控制器类中,我允许用户创建文件夹。

我希望当用户单击“确定”(自定义按钮)时,新文件夹将作为工作区中的记录发布,但我找不到如何操作。

任何帮助表示赞赏。

Swa*_*ati 5

最后,我实现了一种将记录发布到共享工作区的方法:

        ContentVersion doc = new ContentVersion();
        string before = 'Testing base 64 encode'; 
        Blob beforeblob = Blob.valueOf(before);
        doc.Title = title;
        doc.PathOnClient = 'xyz';
        doc.VersionData = beforeblob;
        insert doc;

        doc = [select ContentDocumentId from ContentVersion where id = :doc.id];
        ContentWorkspace shareWorkspace = [select id from ContentWorkspace 
                  where name = :workspaceName limit 1];

        ContentWorkspaceDoc docLink = new ContentWorkspaceDoc();
        docLink.ContentDocumentId = doc.ContentDocumentId;
        docLink.ContentWorkspaceId = shareWorkspace.id;
        insert docLink;
Run Code Online (Sandbox Code Playgroud)

将记录发布到个人工作区:

        ContentVersion doc = new ContentVersion();
        string before = 'Testing base 64 encode'; 
        Blob beforeblob = Blob.valueOf(before);
        doc.Title = title;
        doc.PathOnClient = title;
        doc.VersionData = beforeblob;
        **doc.FirstPublishLocationID = UserInfo.getUserId();**
        insert doc; 
Run Code Online (Sandbox Code Playgroud)

我已经从 String 创建了一个 blob,但我需要创建一个 blob,该 blob 可以显示一个表,其中包含我想要显示的所有信息,例如大小和作者姓名。

感谢保罗的想法。可能有人可以帮助我创建我选择的 blob。

:)