-
Notifications
You must be signed in to change notification settings - Fork 688
Open
Labels
SCMGitHub request for SCM areaGitHub request for SCM areaevent-requestRequest for adding an eventRequest for adding an event
Description
Why do you need this change?
In our solution we are storing the validity calculation formula per sales header record and are still using our own "valid until" fields. We now want to integrate as much as possible into the base app, so we need an event to override the validity calculation from the sales setup.
Below are two different suggestions how to implement this. We tried to avoid the generic IsHandled pattern.
Describe the request
Suggestions 1
local procedure CalcQuoteValidUntilDate()
var
BlankDateFormula: DateFormula;
+ QuoteValidityCalculation: DateFormula;
begin
GetSalesSetup();
+ QuoteValidityCalculation := SalesSetup."Quote Validity Calculation";
+ OnCalcQuoteValidUntilDateOnBeforeAssign(Rec, xRec, QuoteValidityCalculation, UpdateDocumentDate);
+ if QuoteValidityCalculation <> BlankDateFormula then
+ "Quote Valid Until Date" := CalcDate(QuoteValidityCalculation , "Document Date");
- if SalesSetup."Quote Validity Calculation" <> BlankDateFormula then
- "Quote Valid Until Date" := CalcDate(SalesSetup."Quote Validity Calculation", "Document Date");
end;
[IntegrationEvent(false, false)]
local procedure OnCalcQuoteValidUntilDateOnBeforeAssign(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var QuoteValidityCalculation: DateFormula; UpdateDocumentDate: Boolean)
begin
end;Suggestions 2
local procedure CalcQuoteValidUntilDate()
var
BlankDateFormula: DateFormula;
+ QuoteValidUntilDate: Date;
begin
+ QuoteValidUntilDate := 0D;
+ OnBeforeCalcQuoteValidUntilDate(Rec, xRec, QuoteValidUntilDate, UpdateDocumentDate);
+ if QuoteValidUntilDate <> 0D then begin
+ "Quote Valid Until Date" := QuoteValidUntilDate;
+ exit;
+ end;
GetSalesSetup();
if SalesSetup."Quote Validity Calculation" <> BlankDateFormula then
"Quote Valid Until Date" := CalcDate(SalesSetup."Quote Validity Calculation", "Document Date");
end;
[IntegrationEvent(false, false)]
local procedure OnBeforeCalcQuoteValidUntilDate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var QuoteValidUntilDate: Date; UpdateDocumentDate: Boolean)
begin
end;Internal work item: AB#622577
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
SCMGitHub request for SCM areaGitHub request for SCM areaevent-requestRequest for adding an eventRequest for adding an event