Программно добавить/опубликовать запись в рабочей области/библиотеках в salsforce с помощью apex

Я создал пользовательскую страницу visualforce. Здесь, в классе контроллера, я разрешаю пользователю создавать папки.

Я хочу, чтобы когда пользователь нажимал OK (пользовательская кнопка), новая папка публиковалась как запись в рабочей области, но я не могу найти, как это сделать.

Любая помощь приветствуется.


person Swati    schedule 04.07.2011    source источник
comment
код, который вы добавили, не прошел в вашем вопросе, вы можете сделать репост?   -  person Ralph Callaway    schedule 10.07.2011
comment
я хочу знать, как опубликовать запись в рабочей области   -  person Swati    schedule 11.07.2011


Ответы (2)


Наконец-то я нашел способ опубликовать запись в общем рабочем пространстве:

        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;

Опубликовать запись в Личной рабочей области:

        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; 

Я создал большой двоичный объект из строки, но мне нужно создать большой двоичный объект, который может отображать таблицу со всей информацией, которую я хочу отобразить, например размер и имя автора.

Спасибо Павел за идею. Может быть, кто-то может помочь мне в создании blob по моему выбору.

:)

person Swati    schedule 12.07.2011

Свати

Вам нужно создать папку, а затем после вставки папки создать запись ContentWorkspaceDoc, связывающую их. Ссылку API на объект можно найти здесь. Затем это должно позволить вам настроить требуемую связь.

Павел

person pbattisson    schedule 11.07.2011
comment
Спасибо, Пол, но не могли бы вы предоставить мне пример кода, которому я могу следовать, поскольку я видел эту ссылку раньше, но не смог реализовать ее в соответствии с моими потребностями. - person Swati; 12.07.2011
comment
Что вы подразумеваете под этим: после вставки папки создайте запись ContentWorkspaceDoc, связывающую два -- куда вставить папку - person Swati; 12.07.2011
comment
Пол, я могу опубликовать запись в общей рабочей области, но не могу опубликовать ее в личной рабочей области. - person Swati; 14.07.2011
comment
Посмотрите здесь пример Java, а затем посмотрите, как он это делает. developer.force.com/ кулинарная книга/рецепт/ - person pbattisson; 14.07.2011