Notifications
Announcements
No record found.
[EventSubscriber(ObjectType::Table, Database::"Email Item", 'OnBeforeGetBodyText', '', true, true)] local procedure OnBeforeGetBodyText(var EmailItem: Record "Email Item"; var Value: Text; var IsHandled: Boolean) var TempBlob: Codeunit "Temp Blob"; FileManagement: Codeunit "File Management"; BodyText: BigText; DataStream: InStream; BlobInStream: InStream; BodyOutStream: OutStream; MyHTML: Text; Attachments: Codeunit "Temp Blob List"; AttachmentNames: List of [Text]; NewBody: Text; begin MyHTML := 'Custom HTML'; if not EmailItem.Body.HasValue() and not ((EmailItem."Body File Path" <> '')) then exit; if EmailItem."Body File Path" <> '' then begin //FileManagement.InstreamExportToServerFile(TempBlob, EmailItem."Body File Path"); //FileManagement.BLOBImport(TempBlob, EmailItem."Body File Path"); //TempBlob.CreateInStream(BlobInStream, TextEncoding::UTF8); //EmailItem.Body.CreateOutStream(BodyOutStream); //CopyStream(BodyOutStream, BlobInStream); end; if EmailItem."Plaintext Formatted" then begin EmailItem.Body.CreateInStream(DataStream, TextEncoding::UTF8); BodyText.Read(DataStream); BodyText.GetSubText(Value, 1); end else begin // EmailItem.Body.CreateInStream(DataStream, TextEncoding::UTF8); // DataStream.Read(Value); Clear(Value); EmailItem.Calcfields(Body); If EmailItem.Body.HasValue() then begin EmailItem.Body.CreateInStream(DataStream); DataStream.Read(Value); end; end; Value := MyHTML Value; IsHandled := true; End;
[Scope('OnPrem')] procedure GetBodyText() Value: Text var TempBlob: Codeunit "Temp Blob"; FileManagement: Codeunit "File Management"; BodyText: BigText; DataStream: InStream; BlobInStream: InStream; BodyOutStream: OutStream; IsHandled: Boolean; begin // Note this is intended only to get the body in memory - not from the database. Value := ''; IsHandled := false; OnBeforeGetBodyText(Rec, Value, IsHandled); if IsHandled then exit(Value); // If the body doesn't have a value, attempt to import the value from the file path, otherwise exit. if not Body.HasValue() and not (("Body File Path" <> '') and Exists("Body File Path")) then exit; if not Body.HasValue() and ("Body File Path" <> '') and Exists("Body File Path") then begin FileManagement.BLOBImportFromServerFile(TempBlob, "Body File Path"); TempBlob.CreateInStream(BlobInStream, TextEncoding::UTF8); Body.CreateOutStream(BodyOutStream); CopyStream(BodyOutStream, BlobInStream); end; if "Plaintext Formatted" then begin Body.CreateInStream(DataStream, TextEncoding::UTF8); BodyText.Read(DataStream); BodyText.GetSubText(Value, 1); end else begin Body.CreateInStream(DataStream, TextEncoding::UTF8); DataStream.Read(Value); end; exit(Value); end;
[EventSubscriber(ObjectType::Codeunit, Codeunit::"Email", 'OnEnqueuedInOutbox', '', true, true)] local procedure OnEnqueuedInOutbox(MessageId: Guid) begin end;
Hello,
We currently do not have dedicated Dev support via the Dynamics 365 Business Central forums, but I wanted to provide you some additional resources to assist. If you need assistance with debugging or coding I would recommend discussing this on one of our communities.
www.yammer.com/dynamicsnavdev
dynamicsuser.net/.../developers
I will open this up to the community in case they have something to add.
Thanks.
What version are you on?
And you are running on-prem if i read your code correctly?
Thank you Marco.
I m trying to signup at yammer but didn't get verification email at my gmail. should i give work email?
yammer is not accepting .tech domain. My work email is xxxxx@abc.tech
Under review
Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.
As AI tools become more common, we’re introducing a Responsible AI Use…
We are honored to recognize Neeraj Kumar as our Community Spotlight honoree for…
These are the community rock stars!
Stay up to date on forum activity by subscribing.
OussamaSabbouh 2,238
YUN ZHU 773 Super User 2025 Season 2
Sumit Singh 630