AX 2012 - PO Print with Multiple Delivery Address

Does Purchase Order with Multiple delivery address print separate for each address.???

Depends on the sales parameters (receivable) tab updates, you can chose to split confirmation/packing slip/invoice based on delivery information.

This can’t be right… the AR parameters control how a purchase order is split up?? It seems to me that this functionality is gone in AX2012. Does anyone know differently?

Summey Update Parameters option. Setup in Procurement and Sourcing.

This does not allow me to split a PO into multiple journals based on the delivery address on the lines as you could in 2009. In fact, the ability to partially confirm POs is gone now. VendPurchOrderTrans no longer exists and is replaced by multiple tables such as PurchTableHistory, PurchLineHistory, PurchTableVersion and several Views derived from these. My client wants to be able to split POs by delivery address on the lines and it seems like it would take a massive amount of work to get this to happen in 2012. Does anyone have any ideas?

I was pointing to where the option is now as a menu item. Having looked it does look as though the functionality has been removed by delivery address, part of the address redeign, but I cannot see it anywhere. Perhaps ask MS where it is?

It appears that Microsoft made it part of the India functionality which makes no sense. I was part of the standard US product in 2009 but not in version 2012. I don’t want to have to turn on the India functionality to get this.

I am having the same problem, my client wants to be able to have different delivery addresses & delivery dates at line level but then when they print of the delivery note it needs to be handled at line level not at header level.

anyone got any ideas?

I was mistaking. The India functionality includes the ability to split the packing and invoice on Purchase orders based on delivery information but not the purchase order confirmation. As Jeremy pointed out, the ability to even to a partial PO confirmation is gone (no line section in the confirmation journal). This seems like a step backward just to get the ability to compare versions on the PO.

Could any pioneer clarify whether the functionality PO print with multiple delivery addresses is availble or not in AX 2012 ?

Sorry Guys - the functionality was removed on AX 2012. I had this confirmed from my contact point (old co-worker at MS).

Here is a lead to start customizing the functionality back to where it was on 2009.

If they have more than one delivery address on the lines (as in the lines have different delivery addresses) then they will have to take the modification further but this should still provide inspiration. Modified Tables\PurchPurchaseOrderHeader\initFromVendPurchOrderJour:

///

/// Initializes a PurchPurchaseOrderHeader table record with the values from a VendPurchOrderJour table record.

///

///

/// The VendPurchOrderJour table record.

///

public void initFromVendPurchOrderJour(VendPurchOrderJour _vendPurchOrderJour)

{

VendFormletterDocument vendFormletterDocument = VendFormletterDocument::find();

PurchLine purchLine; //Added line

select firstonly purchLine where purchLine.PurchId == _vendPurchOrderJour.PurchId; //Added line

this.PurchaseOrderId = _vendPurchOrderJour.PurchaseOrderId;

this.PurchOrderDocNum = _vendPurchOrderJour.PurchOrderDocNum;

this.PurchOrderDate = _vendPurchOrderJour.PurchOrderDate;

//this.DeliveryName = _vendPurchOrderJour.DeliveryName; //Commented out line

//this.DeliveryAddress = _vendPurchOrderJour.deliveryAddress().Address; //Commented out line

this.DeliveryName = purchLine.DeliveryName; //Added line

this.DeliveryAddress = purchLine.deliveryAddress().Address; //Added line

this.IsPrepay = _vendPurchOrderJour.IsPrepay;

this.EnableAmountControls = _vendPurchOrderJour.AmountPurchaseOrder;

this.SalesOrderBalance = _vendPurchOrderJour.SalesOrderbalance;

this.EndDisc = _vendPurchOrderJour.EndDisc;

this.SumMarkup = _vendPurchOrderJour.SumMarkup;

this.SumTax = _vendPurchOrderJour.SumTax;

this.RoundOff = _vendPurchOrderJour.RoundOff;

this.Amount = _vendPurchOrderJour.Amount;

if (this.PrintTaxFreeBalance == NoYes::Yes)

{

this.NetAmount = _vendPurchOrderJour.netAmount();

}

this.initFromCompanyInfo(CompanyInfo::findDataArea(_vendPurchOrderJour.company()));

if ((vendFormletterDocument.DocuOnPurchOrder == DocuOnFormular::Head)

|| (vendFormletterDocument.DocuOnPurchOrder == DocuOnFormular::All))

{

this.Notes = Docu::concatDocuRefNotes(

DocuRefSearch::newTypeIdAndRestriction(_vendPurchOrderJour,

vendFormletterDocument.DocuTypePurchOrder,

DocuRestriction::External));

}

}