what means following code ?

mdsrmdsr Member Posts: 163
edited 2019-09-04 in NAV Three Tier
Hi, I am trying to understands but not get correct meaning of function
AssistEdit(OldOpenPO : Record "Purchase Rate Agreement Header") : Boolean

WITH OpenPO DO BEGIN
  OpenPO := Rec;  //why this
  PurchSet.GET;
  PurchSet.TESTFIELD("Agreement Nos."); 
  IF NoSeriesMgt.SelectSeries(PurchSet."Agreement Nos.",OldOpenPO."No. Series","No. Series") THEN BEGIN
    NoSeriesMgt.SetSeries("Agreement No.");
    Rec :=OpenPO;   //why this 
    EXIT(TRUE);        //why exit used here [s]
[/s]
  END;
END; 

OpenPO:Record variable purchase rate agreement header(custom table )
PurchSet: Record varable purchase and payble setup

Answers

  • vaprogvaprog Member Posts: 1,144
    Hi msdr

    Assignments between Rec and OpenPO are done to protect Rec from accidental change in case function SelectSeries returns FALSE, but return the change done by it in case it returns TRUE (have you noticed the WITH OpenPO statement which makes the "No. Series" parameter (the last one) part of this record?)

    The EXIT(TRUE); statement is to return the success state as the functions value. If the function terminates without executing an EXIT statement, the function returns FALSE by default (in general it would return the type's default initialization value).

    Have a look at the OnAssistEdit trigger on the "No." field on page 42 to see an example on how this is used.
Sign In or Register to comment.