Announcements
[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;
yammer is not accepting .tech domain. My work email is xxxxx@abc.tech
Thank you Marco.
I m trying to signup at yammer but didn't get verification email at my gmail. should i give work email?
What version are you on?
And you are running on-prem if i read your code correctly?
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.
dynamicsuser.net/.../developers
I will open this up to the community in case they have something to add.
Thanks.
André Arnaud de Cal... 291,359 Super User 2024 Season 2
Martin Dráb 230,370 Most Valuable Professional
nmaenpaa 101,156