Document approval for Indent

My client has to use Document approval functionality in Purchase Indent.

After Release → send for approval request …

I know indent is not the standard functionality in nav .

How can i use this. At present the functionality of Approve is used ,but not by using Document approval setup. How can i use Document authoriser if not using document approval . or

plz suggest which one will be easier by using document approval or not using.


That you have to discuss with your customer and based on their business requirement you have to give them…


Use Document Approval of Standard Navision

It is easier to use and explore.

Thanks for your Interest…

As a shortcut I have finished the work by adding a Field Authorized By in Indent Header.The same code which is running in Approved Feature.

But will be thankful if any one suggests bu using document approval. Basically i need a code for Indent in the codeunit Approval Management, because Indent is not mentioned here.


Can any one tell me why the P.o is automatically approved & released after i pres send for approval request ? though the approver id is other than user id.

The code running in Send for approval request is "

IF ApprovalMgt.SendPurchaseApprovalRequest(Rec) THEN;

also if i change the approval setup many times than the next eror comes :

There is no Approval Entry within the filter.

Filters: Table ID: 38, Document Type: Order, Document No.: PO-00001.

The error occurs when I try to Send an Approval Request from a Purchase Order.

in code unit 439 approval management following code running iinside send purchase approval reqest .plz suggest where might be the problem , i m not a programmer.


WITH PurchaseHeader DO BEGIN

IF Status <> Status::Open THEN


IF NOT ApprovalSetup.GET THEN


IF NOT PurchLinesExist THEN

ERROR(Text015,FORMAT(“Document Type”),“No.”);

TemplateRec.SETCURRENTKEY(“Table ID”,“Document Type”,Enabled);

TemplateRec.SETRANGE(“Table ID”,DATABASE::“Purchase Header”);

TemplateRec.SETRANGE(“Document Type”,“Document Type”);


IF TemplateRec.FIND(’-’) THEN BEGIN


IF TemplateRec.“Limit Type” = TemplateRec.“Limit Type”::“Credit Limits” THEN BEGIN

ERROR(STRSUBSTNO(Text025,FORMAT(TemplateRec.“Limit Type”),FORMAT(“Document Type”),



IF NOT FindApproverPurchase(PurchaseHeader,ApprovalSetup,TemplateRec) THEN



UNTIL TemplateRec.NEXT = 0;


CASE MessageType OF

MessageType::AutomaticPrePayment:MESSAGE(Text128,PurchaseHeader.“Document Type”,PurchaseHeader.“No.”);

MessageType::AutomaticRelease:MESSAGE(Text003,PurchaseHeader.“Document Type”,PurchaseHeader.“No.”);

MessageType::RequiresApproval: MESSAGE(Text001,“Document Type”,“No.”);



ERROR(STRSUBSTNO(Text129,PurchaseHeader.“Document Type”));


CAN ANYONE BRIEF ME ABOUT Multilevel Authorization.

In Indian Localization you have granule called Multilevel Authorization. HOW CAN i use this.