Не удается создать PDF-файл с цитатой при помощи Apex при вызове из потока - PullRequest
0 голосов
/ 12 февраля 2020

Я создал InvocableMethod, который вызывается из моего потока. Этот метод просто создает PDF цитаты и прикрепляет его к цитате. Этот метод выглядит следующим образом:

@InvocableMethod(label='Create Quote PDF' description='Creates a PDF and saves it to the quote.')
public static void createPdf(List<string> quoteIds)
    {
        string quoteId = quoteIds[0];

        //Create pdf content
        PageReference pg = new PageReference('/quote/quoteTemplateDataViewer.apexp?id=xxx&summlid=yyy'); 

        //Document object of quote which hold the quote pdf
        QuoteDocument quotedoc = new QuoteDocument(); 

        //Get the content of Pdf.
        Blob b = pg.getContentAsPDF() ;

        //content assign to document
        quotedoc.Document = b;

        //assign quote id where pdf should attach
        quotedoc.QuoteId = 'xxx';

        insert quotedoc; 
    }

Это не работает, когда я выполняю свой поток; он создаст PDF и приложит его к цитате, но он будет пустым. Забавно, что если я возьму этот код и выполню в анонимном окне, он будет работать нормально! PDF создается как ожидалось. Похоже, он не работает, если по какой-то причине вызывается из потока.

Есть идеи, как я могу решить эту проблему?

...