Avatar
Imak
Participante
Imak

Hola Laura,

Por abreviar sólo te voy a poner las funciones que intervienen en el envío del email ya que todas las funciones del test, incluida la del mail, funcionan bien. He vuelto a realizar una prueba antes de escribir este post revisando la configuración smtp en navision indicada por mailtrap.

codeunit 50151 «ImIns Test Management»
{
Subtype = Test;

[Test]
procedure InsuranceEmail();
var
Insurance: Record Insurance;
InsuranceEmailMgt: Codeunit «ImIns InsuranceEmailMgt» ;
begin
// [Scenario]

// [Given] Setup:
Insurance.FindFirst();
Insurance.»ImIns Alert» := true;
Insurance.Modify();
// [When] Sending an email
InsuranceEmailMgt.Run();
// [Then] Verify:
//ExpectedValue := ‘Expected_Value’;
//ActualValue := ‘Actual_Value’;
//IfErrorTxt := ‘This_Text_Will_Be_Shown_If_The_Test_Fails’;
//AssertThat.AreEqual(ExpectedValue, ActualValue, IfErrorTxt);
end;
var
AssertThat: Codeunit Assert;
ExpectedValue: Variant;
ActualValue: Variant;
IfErrorTxt : Text;
}
codeunit 50150 «ImIns InsuranceEmailMgt»
{
trigger OnRun();
begin
CheckAndSendInsuranceEmailsAndNotifications();
end;

local procedure CheckAndSendInsuranceEmailsAndNotifications()
var
Insurance : Record Insurance;
begin
Insurance.SetRange(«ImIns Alert»,true);
if Insurance.FindSet() then
repeat
// Comprobar si hay que mandar email
//CheckEmailNotificationRequired();
// Mandarlo a tantos usuarios como sea preciso
SendInsuranceEmailNotification(Insurance);
until Insurance.Next() = 0;
end;
local procedure SendInsuranceEmailNotification(Insurance: Record Insurance);
var
SMTPMail: Codeunit «SMTP Mail»;
SenderName : text;
SenderAddress : text;
Subject : text;
Body: Text;
Recipients: text;
HTMLFormatted : Boolean;
begin
SenderName := ‘yo’;
SenderAddress := ‘yo@miempresa.com’;
Recipients := ‘tu@tuempresa.com’;
Subject := ‘Alerta vencimiento seguro’;
Body := ‘Cuerpo’;
HTMLFormatted := true;
SMTPMail.CreateMessage(
SenderName,
SenderAddress,
Recipients,
Subject,
Body,
HTMLFormatted
)
end;
}

Un saludo

#8314