How to close PO or outstanding PO

Hi NAV Expert

Please advice how to close PO or to update outstanding PO in order get out of the list?

As by default Navision doesn’t provide any functionality like closing of PO

Lets add one field as Close PO (Boolean) on Purchase header and write a code to modify it and then filiter out those record from list


You can Archive those PO and filter it out from List .


welcome to this forum site here you can find lots of things,i suggest you for your problem or question you have to ask any other expert right now i am not able to give you answer sorry for that

classified website

Hi NAV Expert

I need your advice to sort out the issue. Please help.

You have Add one field in Purchase Header Table and Purchase Line Table as ‘Close PO’

Then Add Menu Option on Purchase Order Form as Closel PO and Write Following code on OnPushTrigger

“Close PO” :=TRUE;



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

recPurLine.SETRANGE(recPurLine.“Document No.”,“No.”);

IF recPurLine.FIND(’-’) THEN BEGIN


recPurLine.“Close PO” :=TRUE;


UNTIL recPurLine.NEXT=0;


Both the posts are same

Dont post same questions with different user names.

Hi I only have one account in DUG.

Common Issues forum” so possible some has same problem with mine.

My mistake I just post new question I should have search in this site first. Anyhow thank you all

Hi Mohana,

You could have just atleast say that maybe we we knew each other than immediately accused a confused users of having a different name.

Anyway, I am not an expert end user of NAV thats why Im here in DUG to ask for opinion. I have another question is it safe to broadcast user’s IP address, I mean is that responsible enough? Is what DUG really do? broadcasting IP address? Honestly, Im not an expert , Im not sure of the consequence for having my IP broadcast to the world. Though I know it is easy anyway for someone who is expert or even not expert to know my IP.

Seriously I have to say thank you DUG for all the help. Goodbye I dont feel secured anymore with your site. :(((

The standard product does not have the feature that you are looking for.

In order to get rid of PO with outstanding quantities, you can post the PO completely and the post a Return order with exact cost reversing. to adjust the quanitity & value.


Genovia holly,

on behalf of DUG I want to apologize for one of the moderators abusing hi powers. You are 100% correct that this is something not tolerated here. We use IP addresses to track spam, but the publishing of your personal information is not something that is acceptable,

Hi Amol,

We tried your suggestion. When we compiled and save the changes it will ask

there must be := assignment.

Example MyVar := … 100+10

Also In C\L Globals we type Cancel PO what datatype are we going to use like boolean, text, form etc?


Cancel PO will be you field in Purchase Header & Line Table and not a variable

Data type will be Boolean

Check the code where you are assigning the value to variable

Hi Amol,

I already changed the data type to Boolean. It says "Type conversion is not possible because one of the operators contain an invalid type.

Integer := Boolean"


After I specified INIT in Global C/AL symbols. It says, "You have specified an unknown variable.


Define the variable under ‘Global C/AL symbols’.

Again I am reapeating

Add one Field as ‘Cancel PO’ with Data type Boolean in Purchase Header Table

Then Write above code

and INIT can be used with Record Variable

Hope this resolve ur problem.

Let’s start again this post has taken some tangents.

You want to closed a po. Forst we need to know whay these po’s aren’t being closed.

Is it that you didn’t receive an invoice from the vendor and it’s been a year?

Is it because not all the items have been received and the backorder isn’t coming?