PORTOR: PO Purchase Order Receipts
The PO Purchase Order Receipts business object is used to process positive receipts against purchase orders. Items can be receipted into stock or into inspection, if they have been defined as requiring inspection or they are lot traceable items. Non-stocked lines can optionally be receipted into inspection.
The Goods in Inspection facilities allow for a two-stage receipt of stock. Goods receipted into inspection can be counted (using PORTIC), inspected (using PORTII), rejected (using PORTIR), returned (using PORTIX) or scrapped (using PORTIS) before actually updating the stock on hand with the accepted quantity.
If the purchase order is linked to a sales order, the applicable sales order can be updated by the receipt quantity and moved to the next status.
If the purchase order was created from a requisition, a notification of the receipt of goods will be sent to the originator of the requisition, according to the rule defined in Purchase Orders Setup (Setup | Distribution Setup | Purchase Orders | Requisition tab).
Serial numbers, bin locations, and lot numbers can be entered where applicable and a portion of the transaction value can be specified as comprising non-merchandise costs, which can be distributed to various ledger codes prior to posting to General Ledger. Cost multiplier entries cannot be posted if the Inventory Setup option: Apply cost multiplier when processing receipts (Setup | Distribution Setup | Inventory | Options tab) is not selected.
If the GRN suspense system is required, a GRN must either be entered for the transaction or it will be automatically generated according to the numbering method defined in Purchase Orders Setup (Setup | Distribution Setup | Purchase Orders | Numbering tab).
-
If a receipt is not associated with a purchase order, job, or a backflushing entry, use the business object INVTMR.
-
To process a job receipt, use the business object WIPTJR.
-
To process a backflushing transaction, use the business object INVTBF.
Properties
| Syspro Module | Purchase Orders |
| Class | Transaction |
| Methods | Post |
| Functional Area | Purchase Orders Primary Posting |
| Initial version released | Syspro 6.1 |
The facility to process a negative receipt is unavailable.
When receipting a purchase order that is linked to a job, it is not possible to issue the receipted items directly to the job using this business object. To issue the receipted items to the job, use the business object WIPTMI.
The facility to receipt all lines by supplying just the purchase order number is unavailable
If you want to receive in purchase order quantities on blanket purchase orders, you need to first release the BPO lines for PO creation using SYSPRO program PORP38 (Blanket PO Release), and then create the related purchase orders using SYSPRO program PORP32 (Build Purchase Orders). PORTOR does not call PORTOI to create the purchase orders from the blanket purchase order contracts. Unfortunately, there are currently no blanket purchase order business objects to release BPO lines, or to build the related purchase orders.
When receipting a purchase order that is linked to a job, it is not possible to issue labor allocations directly to the job using the business object. To issue labor allocation to the job, use the business object WIPTLP.
Input XML
The .XML and .XSD input files indicate the parameters schema and an instance of an XML document for this business object.
<?xml version="1.0" encoding="Windows-1252"?>
<!-- Copyright 1994-2025 SYSPRO Ltd. -->
<!--
This is an example XML instance to demonstrate
use of the Purchase Order Receipts Business Object
-->
<PostPurchaseOrderReceipts xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance" xsd:noNamespaceSchemaLocation="portor.xsd">
<Parameters>
<TransactionDate>2006-04-08</TransactionDate>
<IgnoreWarnings>N</IgnoreWarnings>
<NonStockedWhToUse></NonStockedWhToUse>
<GRNMatchingAction>A</GRNMatchingAction>
<AllowBlankSupplier>N</AllowBlankSupplier>
<ApplyIfEntireDocumentValid>Y</ApplyIfEntireDocumentValid>
<ValidateOnly>N</ValidateOnly>
<ManualSerialTransfersAllowed>N</ManualSerialTransfersAllowed>
<IgnoreAnalysis>Y</IgnoreAnalysis>
<IncludeDimensionAnalysis>N</IncludeDimensionAnalysis>
<IgnoreDecimals>N</IgnoreDecimals>
</Parameters>
</PostPurchaseOrderReceipts>
<?xml version="1.0" encoding="Windows-1252"?>
<!-- Copyright 1994-2025 SYSPRO Ltd. -->
<!--
Schema for the Purchase Order Receipts Business Object
-->
<xsd:schema elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="AllowBlankSupplier" default="N">
<xsd:annotation>
<xsd:documentation>This element indicates if the NmSupplier element is allowed to be blank. If set to 'N', the NmSupplier must be provided. If set to 'Y', the NmSupplier may be blank, but will be validated if it is not blank. Valid values are 'Y' and 'N'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="Y" />
<xsd:enumeration value="N" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ApplyIfEntireDocumentValid" default="Y">
<xsd:annotation>
<xsd:documentation>This element indicates whether to process entire document only if all items are valid. If set to 'N', each item is validated and rejected if in error or processed if correct. This is the fastest option. If set to 'Y', all items are validated and only processed if entire document is valid. Default is 'Y'. Valid values are 'Y' and 'N'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="Y" />
<xsd:enumeration value="N" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="GRNMatchingAction" default="A">
<xsd:annotation>
<xsd:documentation>This element instructs the program what to do with regards to GRN matching.
If GRN matching is required and the supplier is not switched on for GRN matching, the transaction is rejected if this element is set to 'R'. Alternatively, if this element is set to 'A', the transaction is accepted as is. Valid values are 'A' and 'R'. Default is 'A'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="A" />
<xsd:enumeration value="R" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="IgnoreWarnings" default="N">
<xsd:annotation>
<xsd:documentation>This element indicates whether or not a transaction must be rejected if there are any warnings, such as a P/O not yet printed, ledger code, debit ledger code or non-merchandise ledger code is a control account, quantity greater than inspected to date or greater than available to accept, transaction not allowed for kits, cost variance exceeded, stock on partial hold, quantity received greater than ordered, early or late supply, over or under supply, order already released for invoicing, S/O line complete or access to job classification denied. If 'W' supplied, these errors will be reported as warnings. If it is not supplied, it defaults to 'N'. Valid values are 'N', 'W' and 'Y'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
<xsd:enumeration value="W" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ManualSerialTransfersAllowed" default="N">
<xsd:annotation>
<xsd:documentation>If manual serial numbers exist in a different warehouse with no stock on hand they may be transferred to the warehouse where they are required. To do this, this element may be set to 'Y'. This is only applicable to normal receipts. Valid values are 'N' and 'Y'. Default is 'N'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NonStockedWhToUse">
<xsd:annotation>
<xsd:documentation>This element contains the default warehouse to be used when processing non-stocked items. If supplied, it overrides the non-stocked warehouse defined in operator defaults or company defaults in SYSPRO.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Parameters">
<xsd:annotation>
<xsd:documentation>This contains parameters.</xsd:documentation>
</xsd:annotation>
<xsd:complexType mixed="false">
<xsd:sequence>
<xsd:element ref="TransactionDate" minOccurs="0" />
<xsd:element ref="IgnoreWarnings" minOccurs="0" />
<xsd:element ref="NonStockedWhToUse" minOccurs="0" />
<xsd:element ref="GRNMatchingAction" minOccurs="0" />
<xsd:element ref="AllowBlankSupplier" minOccurs="0" />
<xsd:element ref="ApplyIfEntireDocumentValid" minOccurs="0" />
<xsd:element ref="ValidateOnly" minOccurs="0" />
<xsd:element ref="ManualSerialTransfersAllowed" minOccurs="0" />
<xsd:element name="IgnoreAnalysis" default="Y" minOccurs="0">
<xsd:annotation>
<xsd:documentation>When adding or maintaining a journal you can specify whether the G/L analysis must be validated for the ledger code. Valid entries are 'Y' (Ingore G/L analysis) or 'N' (Validate G/L analysis). If no value is supplied then a default value of 'Y' will be used. If you are supplying your own AnalysisEntry number ensure that you have set this flag to "Y" else the program will still validate the analysis.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="Y" />
<xsd:enumeration value="N" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="IncludeDimensionAnalysis" minOccurs="0">
<xsd:annotation>
<xsd:documentation>This option determines whether or not to use GL dimension analysis. If set to 'Y' then GL dimension analysis will be used. The default is 'N'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Y" />
<xsd:enumeration value="N" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="IgnoreDecimals" default="N" minOccurs="0">
<xsd:annotation>
<xsd:documentation>This will ignore the number of decimals against the receipt quantity when compared to the bin quantity for lines created with an alternate unit of measure. The default is 'N'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="PostPurchaseOrderReceipts">
<xsd:annotation>
<xsd:documentation>This is the root element.</xsd:documentation>
</xsd:annotation>
<xsd:complexType mixed="false">
<xsd:sequence>
<xsd:element ref="Parameters" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="TransactionDate">
<xsd:annotation>
<xsd:documentation>Date transaction raised. If not supplied, rundate is assumed.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ValidateOnly" default="N">
<xsd:annotation>
<xsd:documentation>This element indicates which processing phases are to be performed. If set to 'Y' all items are validated and an XML string is returned with the result of the validation. No updating will take place. If set to 'N', each item is validated and updating is performed based on setting of the element 'ApplyIfEntireDocumentValid'. Default is 'N'. Valid values are 'N' and 'Y'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:schema>
The DOC.XML and DOC.XSD files indicate the schema and an instance of an XML document for this business object.
<?xml version="1.0" encoding="Windows-1252"?>
<!-- Copyright 1994-2025 SYSPRO Ltd. -->
<!--
This is an example XML instance to demonstrate
use of the Purchase Order Receipts Business Object
-->
<PostPurchaseOrderReceipts xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance" xsd:noNamespaceSchemaLocation="portordoc.xsd">
<Item>
<Receipt>
<Journal />
<PurchaseOrder>436</PurchaseOrder>
<PurchaseOrderLine>1</PurchaseOrderLine>
<Warehouse />
<StockCode />
<Quantity>750.000</Quantity>
<UnitOfMeasure />
<Units />
<Pieces />
<DeliveryNote />
<Cost />
<CostBasis>P</CostBasis>
<SwitchOnGRNMatching>N</SwitchOnGRNMatching>
<GRNNumber>311</GRNNumber>
<Reference />
<GRNSource>1</GRNSource>
<UseSingleTypeABCElements>N</UseSingleTypeABCElements>
<Lot />
<LotExpiryDate />
<LotUseByDate />
<LotSellByDate />
<LotInternalExpiryDate />
<LotManufactureDate />
<LotDispatchDate />
<LotBestBeforeDate />
<Certificate />
<Concession />
<Bins>
<BinLocation>A1</BinLocation>
<BinQuantity>750.000</BinQuantity>
<BinUnits />
<BinPieces />
</Bins>
<Serials>
<SerialNumber>0205</SerialNumber>
<SerialQuantity>1</SerialQuantity>
<SerialUnits />
<SerialPieces />
<SerialExpiryDate />
<SerialLocation />
<SerialBin />
</Serials>
<SerialRange>
<SerialPrefix>999</SerialPrefix>
<SerialSuffix>1</SerialSuffix>
<StartSerialNumber />
<SerialQuantity>8</SerialQuantity>
<SerialExpiryDate />
<SerialLocation />
<SerialBin />
</SerialRange>
<PurchaseOrderLineComplete>N</PurchaseOrderLineComplete>
<PostCompletedPoLine>N</PostCompletedPoLine>
<IncreaseSalesOrderQuantity>N</IncreaseSalesOrderQuantity>
<ChangeSalesOrderStatus>N</ChangeSalesOrderStatus>
<ApplyCostMultiplier>Y</ApplyCostMultiplier>
<CostMultiplier />
<NonMerchandiseCost>150.00</NonMerchandiseCost>
<NonMerchandiseDistribution>
<NmReference>Cost Ref</NmReference>
<NmLedgerCode>00-1170</NmLedgerCode>
<NmSupplier>0000026</NmSupplier>
<NmAmount>150.00</NmAmount>
<NmAnalysisEntry />
<NmAnalysisLineEntry>
<AnalysisCode1>Air</AnalysisCode1>
<AnalysisCode2>Conf</AnalysisCode2>
<AnalysisCode3>East</AnalysisCode3>
<AnalysisCode4 />
<AnalysisCode5 />
<StartDate />
<EndDate />
<EntryAmount>100</EntryAmount>
<Comment>Analysis entry details</Comment>
</NmAnalysisLineEntry>
<DebitNmAnalysisEntry />
<DebitNmAnalysisLineEntry>
<AnalysisCode1>Air</AnalysisCode1>
<AnalysisCode2>Conf</AnalysisCode2>
<AnalysisCode3>East</AnalysisCode3>
<AnalysisCode4 />
<AnalysisCode5 />
<StartDate />
<EndDate />
<EntryAmount>100</EntryAmount>
<Comment>Analysis entry details</Comment>
</DebitNmAnalysisLineEntry>
</NonMerchandiseDistribution>
<Notation>P/O Receipt note</Notation>
<LedgerCode>00-1540</LedgerCode>
<PasswordForLedgerCode />
<DebitLedgerCode />
<PasswordForDebitLedgerCode />
<CountryOfOrigin />
<DeliveryTerms />
<ShippingLocation />
<NatureOfTransaction />
<ModeOfTransport />
<TradersReference />
<TariffCode />
<UnitMass />
<SupplementaryUnits>N</SupplementaryUnits>
<SupplementaryUnitsFactor />
<SupplementaryConvMulDiv>M</SupplementaryConvMulDiv>
<Intrastat>
<IntrastatExempt />
<TriangulationRole />
<DispatchState />
<DestinationState />
</Intrastat>
<AnalysisEntry />
<AnalysisLineEntry>
<AnalysisCode1>Air</AnalysisCode1>
<AnalysisCode2>Conf</AnalysisCode2>
<AnalysisCode3>East</AnalysisCode3>
<AnalysisCode4 />
<AnalysisCode5 />
<StartDate />
<EndDate />
<EntryAmount>100</EntryAmount>
<Comment>Analysis entry details</Comment>
</AnalysisLineEntry>
<DebitAnalysisEntry />
<DebitAnalysisLineEntry>
<AnalysisCode1>Air</AnalysisCode1>
<AnalysisCode2>Conf</AnalysisCode2>
<AnalysisCode3>East</AnalysisCode3>
<AnalysisCode4 />
<AnalysisCode5 />
<StartDate />
<EndDate />
<EntryAmount>100</EntryAmount>
<Comment>Analysis entry details</Comment>
</DebitAnalysisLineEntry>
<IssueDirecttoJob>Y</IssueDirecttoJob>
<Job />
<MaterialLine />
<AllocComplete />
<Lpn>
<LpnDetails>
<CreateNewLpn>Y</CreateNewLpn>
<LicensePlateNumber />
<Container>Pallet</Container>
<NumberOfContainers>2</NumberOfContainers>
<ContainerQuantity>6.000</ContainerQuantity>
</LpnDetails>
<LpnDetails>
<CreateNewLpn>Y</CreateNewLpn>
<LicensePlateNumber>12323322145</LicensePlateNumber>
<Container>BOX</Container>
<NumberOfContainers>1</NumberOfContainers>
<ContainerQuantity>3.000</ContainerQuantity>
</LpnDetails>
</Lpn>
<eSignature />
</Receipt>
</Item>
<Item>
<ReceiptIntoInspection>
<Journal />
<PurchaseOrder>436</PurchaseOrder>
<PurchaseOrderLine>2</PurchaseOrderLine>
<Warehouse />
<StockCode />
<Quantity>50.000</Quantity>
<UnitOfMeasure />
<Units />
<Pieces />
<CountedQuantityComplete>N</CountedQuantityComplete>
<InspectionLevel>GII</InspectionLevel>
<DeliveryNote />
<DeliveryDate />
<Certificate />
<Narration />
<SwitchOnGRNMatching>N</SwitchOnGRNMatching>
<GRNNumber>301</GRNNumber>
<Lot />
<LotExpiryDate />
<LotUseByDate />
<LotSellByDate />
<LotInternalExpiryDate />
<LotManufactureDate />
<LotDispatchDate />
<LotBestBeforeDate />
<PurchaseOrderLineComplete>N</PurchaseOrderLineComplete>
<Serials>
<SerialNumber>0205</SerialNumber>
<SerialQuantity>50</SerialQuantity>
<SerialUnits />
<SerialPieces />
<SerialExpiryDate />
<SerialLocation />
</Serials>
<SerialRange>
<SerialPrefix>98</SerialPrefix>
<SerialSuffix>1</SerialSuffix>
<StartSerialNumber />
<SerialQuantity>8</SerialQuantity>
<SerialExpiryDate />
<SerialLocation />
</SerialRange>
<BinLocation/>
<eSignature />
</ReceiptIntoInspection>
</Item>
<Item>
<ReceiptFromInspection>
<Journal />
<GRNNumber>312</GRNNumber>
<Lot />
<LotExpiryDate />
<LotUseByDate />
<LotSellByDate />
<LotInternalExpiryDate />
<LotManufactureDate />
<LotDispatchDate />
<LotBestBeforeDate />
<Quantity>10.000</Quantity>
<Units />
<Pieces />
<DeliveryNote />
<Concession />
<Cost />
<CostBasis>P</CostBasis>
<Reference />
<GRNSource>1</GRNSource>
<UseSingleTypeABCElements>N</UseSingleTypeABCElements>
<Bins>
<BinLocation>A1</BinLocation>
<BinQuantity>10.000</BinQuantity>
<BinUnits />
<BinPieces />
</Bins>
<SelectAvailableSerials>N</SelectAvailableSerials>
<Serials>
<SerialNumber>0205</SerialNumber>
<SerialQuantity>1</SerialQuantity>
<SerialUnits />
<SerialPieces />
<SerialExpiryDate />
<SerialLocation />
<SerialBin />
</Serials>
<IncreaseSalesOrderQuantity>N</IncreaseSalesOrderQuantity>
<ChangeSalesOrderStatus>N</ChangeSalesOrderStatus>
<ApplyCostMultiplier>Y</ApplyCostMultiplier>
<CostMultiplier />
<NonMerchandiseCost>150.00</NonMerchandiseCost>
<NonMerchandiseDistribution>
<NmReference>Cost Ref</NmReference>
<NmLedgerCode>30-4400</NmLedgerCode>
<NmSupplier />
<NmAmount>150.00</NmAmount>
</NonMerchandiseDistribution>
<Notation>P/O Receipt note</Notation>
<LedgerCode>00-1540</LedgerCode>
<PasswordForLedgerCode />
<DebitLedgerCode />
<PasswordForDebitLedgerCode />
<CountryOfOrigin />
<DeliveryTerms />
<ShippingLocation />
<NatureOfTransaction />
<ModeOfTransport />
<TradersReference />
<TariffCode />
<UnitMass />
<SupplementaryUnits>N</SupplementaryUnits>
<SupplementaryUnitsFactor />
<SupplementaryConvMulDiv>M</SupplementaryConvMulDiv>
<Intrastat>
<IntrastatExempt />
<TriangulationRole />
<DispatchState />
<DestinationState />
</Intrastat>
<IssueDirecttoJob>Y</IssueDirecttoJob>
<Job />
<MaterialLine />
<AllocComplete />
<Lpn>
<LpnDetails>
<CreateNewLpn>Y</CreateNewLpn>
<LicensePlateNumber />
<Container>Pallet</Container>
<NumberOfContainers>2</NumberOfContainers>
<ContainerQuantity>6.000</ContainerQuantity>
</LpnDetails>
<LpnDetails>
<CreateNewLpn>Y</CreateNewLpn>
<LicensePlateNumber>12323322145</LicensePlateNumber>
<Container>BOX</Container>
<NumberOfContainers>1</NumberOfContainers>
<ContainerQuantity>3.000</ContainerQuantity>
</LpnDetails>
</Lpn>
</ReceiptFromInspection>
</Item>
</PostPurchaseOrderReceipts>
<?xml version="1.0" encoding="Windows-1252"?>
<!-- Copyright 1994-2025 SYSPRO Ltd. -->
<!--
Schema for the Purchase Order Receipts Business Object
-->
<xsd:schema elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="InspectionLevel">
<xsd:annotation>
<xsd:documentation>This element is mandatory for quality management when the sample basis is sample quantity and the count is set to complete, or will cause the count to be complete</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ApplyCostMultiplier" default="N">
<xsd:annotation>
<xsd:documentation>This element indicates whether or not a cost multiplier must be applied to the cost of the receipt. If not supplied it defaults to 'N'. Valid values are 'N' and 'Y'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BinLocation">
<xsd:annotation>
<xsd:documentation>This element contains the bin location of the stock being received.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BinPieces">
<xsd:annotation>
<xsd:documentation>If the stock item is a unit-qty type stock item and bin quantity element is not supplied, the bin quantity must be supplied as units and pieces. At least one of these elements must be supplied.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BinQuantity">
<xsd:annotation>
<xsd:documentation>This element is mandatory if stock item is not a unit-qty type stock item. If it is and this element is supplied, the units and pieces elements must NOT be supplied. The total bin quantity must match the quantity specified for the transaction and must be entered in the stocking unit of measure.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BinUnits">
<xsd:annotation>
<xsd:documentation>If the stock item is a unit-qty type stock item and bin quantity element is not supplied, the bin quantity must be supplied as units and pieces. At least one of these elements must be supplied.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Bins">
<xsd:annotation>
<xsd:documentation>This is the top element for the set of bins affected by this transaction. Mandatory if multiple bins are installed. When associate serials by bin is switched on and the item is serialised then the elements within this node should not be used unless you are receipting from inspection and applying the option selecting available serials. When associate serials by bin is switched on and selecting available serials, only one bin can be supplied.</xsd:documentation>
</xsd:annotation>
<xsd:complexType mixed="false">
<xsd:sequence>
<xsd:element ref="BinLocation" />
<xsd:element ref="BinQuantity" minOccurs="0" />
<xsd:element ref="BinUnits" minOccurs="0" />
<xsd:element ref="BinPieces" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Certificate">
<xsd:annotation>
<xsd:documentation>This element is optional and contains the certificate number.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ChangeSalesOrderStatus" default="N">
<xsd:annotation>
<xsd:documentation>This element is optional. If the Purchase Order is linked to a Sales Order, this element can be set to 'Y' if the Sales Order status needs to be changed from '2' (in backorder) to '3' (released backorder). If credit checking is required for the customer and it fails, the sales order may go into 'S' (suspense). Valid values are 'N' and 'Y'. Default is 'N'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Concession">
<xsd:annotation>
<xsd:documentation>This element is optional.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="CostBasis">
<xsd:annotation>
<xsd:documentation>This element is mandatory and must specify which cost to use for the Purchase Order receipt. Valid values are:
C - Current warehouse cost
T - Total cost entered manually
M - Unit cost entered manually
P - Purchase price
X - Purchase price plus tax for a local supplier, Current Price for a foreign supplier</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="CostMultiplier">
<xsd:annotation>
<xsd:documentation>This element contains the cost multiplier to be applied to the cost of the receipt and only takes effect if 'ApplyCostMultiplier' is set to 'Y' and the cost multiplier against the warehouse is greater than 1.00. If this is not supplied, the warehouse cost multiplier is used.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="CountedQuantityComplete" default="N">
<xsd:annotation>
<xsd:documentation>This element is optional and indicates whether the quantity has been counted or not. Valid values are 'N' and 'Y'. Default is 'N'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="CountryOfOrigin">
<xsd:annotation>
<xsd:documentation>This element is optional. It is only required if EC VAT system is required.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="DebitLedgerCode">
<xsd:annotation>
<xsd:documentation>Only required if receiving a non-stocked item. If supplied, it overwrites the default ledger code specified in SYSPRO only if the purchase order line is not linked to a job.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="DeliveryDate">
<xsd:annotation>
<xsd:documentation>This element is optional and contains the delivery date of the receipt. Format must be CCYY-MM-DD. If not supplied it defaults to rundate.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="DeliveryNote">
<xsd:annotation>
<xsd:documentation>This element is optional and contains the supplier's delivery note.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="DeliveryTerms">
<xsd:annotation>
<xsd:documentation>This element is optional. It is only required if EC VAT system is required and the nationality of the supplier is a member of the EU..</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ShippingLocation">
<xsd:annotation>
<xsd:documentation>This element is optional. It is only required if EC VAT system is required and the nationality of the supplier is a member of the EU..</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="eSignature">
<xsd:annotation>
<xsd:documentation>If required, this element must contain a GUID, for the eSignature system to accept the transaction as having been authenticated. The GUID format is in the format {36303032-3330-3031-3038-323434363433}, where the numbers can be replaced with any character. It is up to the developer to have requested a password to protect the transaction. An example is that a GUID associated with the act of entering a valid password could be obtained and presented.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="GRNNumber">
<xsd:annotation>
<xsd:documentation>This element is mandatory if GRN matching is required and must contain a new GRN number, when processing a normal receipt or a receipt into inspection and GRN number is not automatic.
This element is always mandatory when processing a receipt into stock FROM inspection.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="GRNSource">
<xsd:annotation>
<xsd:documentation>This element is mandatory if GRN matching is switched on. Valid values are 1 to 5.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="1" />
<xsd:enumeration value="2" />
<xsd:enumeration value="3" />
<xsd:enumeration value="4" />
<xsd:enumeration value="5" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="IncreaseSalesOrderQuantity" default="N">
<xsd:annotation>
<xsd:documentation>This element is optional. If the Purchase Order is linked to a Sales Order and the receipt quantity is greater than the order quantity, the order quantity will be increased to the receipt quantity, if this element is set to 'Y'. Valid values are 'N' and 'Y'. Default is 'N'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Item">
<xsd:annotation>
<xsd:documentation>This is the top element for all data required for the transaction.</xsd:documentation>
</xsd:annotation>
<xsd:complexType mixed="false">
<xsd:sequence>
<xsd:element ref="Receipt" minOccurs="0" />
<xsd:element ref="ReceiptIntoInspection" minOccurs="0" />
<xsd:element ref="ReceiptFromInspection" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Intrastat">
<xsd:annotation>
<xsd:documentation>EU Intrastat options, only applicable when EC Vat system is required</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="IntrastatExempt" minOccurs="0">
<xsd:annotation>
<xsd:documentation>Intrastat option is exempt or not, Y = Exempt</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="TriangulationRole" minOccurs="0">
<xsd:annotation>
<xsd:documentation>Intrastat triangulation, N = None, A = Agent, C = Customer</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="DispatchState" minOccurs="0">
<xsd:annotation>
<xsd:documentation>Member State of Dispatch. Must be valid if entered</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="DestinationState" minOccurs="0">
<xsd:annotation>
<xsd:documentation>Destination State. Must be valid if entered</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="CountryOfOrigin" minOccurs="0">
<xsd:annotation>
<xsd:documentation>Country where goods originated from. Must be valid if entered</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Journal">
<xsd:annotation>
<xsd:documentation>This is the journal number to which the transaction journal entries generated will be added. It must be valid for the specified posting period and warehouse and may not have been printed already. If not supplied, a new journal will be created.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LedgerCode">
<xsd:annotation>
<xsd:documentation>This element is optional. If supplied, it will overwrite the default ledger code defined in General Ledger Integration.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Lot">
<xsd:annotation>
<xsd:documentation>This element is mandatory if receiving a traceable item.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LotExpiryDate">
<xsd:annotation>
<xsd:documentation>This element is optional and contains the expiry date of the lot supplied, if processing a traceable item. Format must be CCYY-MM-DD.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="LotUseByDate">
<xsd:annotation>
<xsd:documentation>This indicates the recommended date the Lot should be used by. Format CCYY-MM-DD.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string" />
</xsd:simpleType>
</xsd:element>
<xsd:element name="LotSellByDate">
<xsd:annotation>
<xsd:documentation>This indicates the date by when the Lot should be sold. Format CCYY-MM-DD.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string" />
</xsd:simpleType>
</xsd:element>
<xsd:element name="LotInternalExpiryDate">
<xsd:annotation>
<xsd:documentation>This indicates the an internal expiry date. Format CCYY-MM-DD.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string" />
</xsd:simpleType>
</xsd:element>
<xsd:element name="LotManufactureDate">
<xsd:annotation>
<xsd:documentation>This indicates the date the Lot was manufactured. Format CCYY-MM-DD.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string" />
</xsd:simpleType>
</xsd:element>
<xsd:element name="LotDispatchDate">
<xsd:annotation>
<xsd:documentation>This indicates the date the Lot was or will be dispatched by. Format CCYY-MM-DD.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string" />
</xsd:simpleType>
</xsd:element>
<xsd:element name="LotBestBeforeDate">
<xsd:annotation>
<xsd:documentation>This indicates the date the Lot is best before. Format CCYY-MM-DD.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string" />
</xsd:simpleType>
</xsd:element>
<xsd:element name="ModeOfTransport">
<xsd:annotation>
<xsd:documentation>This element is optional. It is only required if EC VAT system is required.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Narration">
<xsd:annotation>
<xsd:documentation>This element is optional.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NatureOfTransaction">
<xsd:annotation>
<xsd:documentation>This element is optional. It is only required if EC VAT system is required.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NmAmount">
<xsd:annotation>
<xsd:documentation>This element contains the non-merchandise amount to be posted to the corresponding ledger code. The total 'NmAmount' distributed must match the non-merchandise cost (either supplied or calculated).</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NmLedgerCode">
<xsd:annotation>
<xsd:documentation>This element contains the ledger code to which the non-merchandise amount must be posted.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NmReference">
<xsd:annotation>
<xsd:documentation>This element is mandatory.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NmSupplier">
<xsd:annotation>
<xsd:documentation>This element is mandatory if GRN matching is switched on.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NonMerchandiseCost">
<xsd:annotation>
<xsd:documentation>This element contains a non merchandise cost to be applied and overrides the cost multiplier, if supplied. This only takes effect if 'ApplyCostMultiplier' is set to 'Y'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="NonMerchandiseDistribution">
<xsd:annotation>
<xsd:documentation>This is the top element for the non-merchandise distribution.</xsd:documentation>
</xsd:annotation>
<xsd:complexType mixed="false">
<xsd:sequence>
<xsd:element ref="NmReference" />
<xsd:element ref="NmLedgerCode" />
<xsd:element ref="NmSupplier" minOccurs="0" />
<xsd:element ref="NmAmount" />
<xsd:element name="NmAnalysisEntry" minOccurs="0">
<xsd:annotation>
<xsd:documentation>If an analysis entry number has been assigned to this detail line, then use this element to store the analysis entry number. If Analysis Line entry is passed then that will overwrite and analysis number supplied in the AnalysisEntry element.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="NmAnalysisLineEntry" minOccurs="0">
<xsd:annotation>
<xsd:documentation>If IgnoreAnalysis is set to 'Y" this node and all it's elements are ignored. If you are supplying your own AnalysisEntry Number ensure that you have set IgnoreAnalysis to "Y"</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="AnalysisCode1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify an analysis code 1 for the analysis entry you are createing</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode2" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify and analysis code 2 for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode3" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify an analysis code 3 for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode4" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify and analysis code 4 for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode5" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify and analysis code 5 for the analysis entry you are createing</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="StartDate" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify a start date for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="EndDate" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify an end date for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="EntryAmount" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You must specify and entry amount for the analysis entry you are creating.If the entry amount supplied does not agree with the calculated transaction value at runtime, the entry amount will be overwritten with the transaction value.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Comment" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can enter a comment for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="DebitNmAnalysisEntry" minOccurs="0">
<xsd:annotation>
<xsd:documentation>If an analysis entry number has been assigned to this detail line, then use this element to store the analysis entry number. If Analysis Line entry is passed then that will overwrite and analysis number supplied in the AnalysisEntry element.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="DebitNmAnalysisLineEntry" minOccurs="0">
<xsd:annotation>
<xsd:documentation>If IgnoreAnalysis is set to 'Y" this node and all it's elements are ignored. If you are supplying your own AnalysisEntry Number ensure that you have set IgnoreAnalysis to "Y"</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="AnalysisCode1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify an analysis code 1 for the analysis entry you are createing</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode2" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify and analysis code 2 for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode3" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify an analysis code 3 for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode4" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify and analysis code 4 for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode5" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify and analysis code 5 for the analysis entry you are createing</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="StartDate" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify a start date for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="EndDate" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify an end date for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="EntryAmount" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You must specify and entry amount for the analysis entry you are creating.If the entry amount supplied does not agree with the calculated transaction value at runtime, the entry amount will be overwritten with the transaction value.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Comment" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can enter a comment for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Receipt">
<xsd:annotation>
<xsd:documentation>This is the top element for the set of data required for a normal purchase order line receipt. It can only be supplied once within each 'Item' instance.</xsd:documentation>
</xsd:annotation>
<xsd:complexType mixed="false">
<xsd:sequence>
<xsd:element ref="Journal" minOccurs="0" />
<xsd:element ref="PurchaseOrder" />
<xsd:element ref="PurchaseOrderLine" minOccurs="0" />
<xsd:element ref="Warehouse" minOccurs="0" />
<xsd:element ref="StockCode" minOccurs="0" />
<xsd:element ref="Quantity" minOccurs="0" />
<xsd:element ref="UnitOfMeasure" minOccurs="0" />
<xsd:element ref="Units" minOccurs="0" />
<xsd:element ref="Pieces" minOccurs="0" />
<xsd:element ref="DeliveryNote" minOccurs="0" />
<xsd:element ref="Cost" minOccurs="0" />
<xsd:element ref="CostBasis" />
<xsd:element ref="SwitchOnGRNMatching" minOccurs="0" />
<xsd:element ref="GRNNumber" minOccurs="0" />
<xsd:element ref="Reference" minOccurs="0" />
<xsd:element ref="GRNSource" minOccurs="0" />
<xsd:element ref="UseSingleTypeABCElements" minOccurs="0" />
<xsd:element ref="Lot" minOccurs="0" />
<xsd:element ref="LotExpiryDate" minOccurs="0" />
<xsd:element ref="LotUseByDate" minOccurs="0" />
<xsd:element ref="LotSellByDate" minOccurs="0" />
<xsd:element ref="LotInternalExpiryDate" minOccurs="0" />
<xsd:element ref="LotManufactureDate" minOccurs="0" />
<xsd:element ref="LotDispatchDate" minOccurs="0" />
<xsd:element ref="LotBestBeforeDate" minOccurs="0" />
<xsd:element ref="Certificate" minOccurs="0" />
<xsd:element ref="Concession" minOccurs="0" />
<xsd:element ref="Bins" minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="Serials" minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="SerialRange" minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="PurchaseOrderLineComplete" minOccurs="0" />
<xsd:element ref="PostCompletedPoLine" minOccurs="0" />
<xsd:element ref="IncreaseSalesOrderQuantity" minOccurs="0" />
<xsd:element ref="ChangeSalesOrderStatus" minOccurs="0" />
<xsd:element ref="ApplyCostMultiplier" minOccurs="0" />
<xsd:element ref="CostMultiplier" minOccurs="0" />
<xsd:element ref="NonMerchandiseCost" minOccurs="0" />
<xsd:element ref="NonMerchandiseDistribution" minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="Notation" minOccurs="0" />
<xsd:element ref="LedgerCode" minOccurs="0" />
<xsd:element ref="PasswordForLedgerCode" minOccurs="0" />
<xsd:element ref="DebitLedgerCode" minOccurs="0" />
<xsd:element ref="PasswordForDebitLedgerCode" minOccurs="0" />
<xsd:element ref="CountryOfOrigin" minOccurs="0" />
<xsd:element ref="DeliveryTerms" minOccurs="0" />
<xsd:element ref="ShippingLocation" minOccurs="0" />
<xsd:element ref="NatureOfTransaction" minOccurs="0" />
<xsd:element ref="ModeOfTransport" minOccurs="0" />
<xsd:element ref="TradersReference" minOccurs="0" />
<xsd:element ref="TariffCode" minOccurs="0" />
<xsd:element ref="UnitMass" minOccurs="0" />
<xsd:element ref="SupplementaryUnits" minOccurs="0" />
<xsd:element ref="SupplementaryUnitsFactor" minOccurs="0" />
<xsd:element ref="SupplementaryConvMulDiv" minOccurs="0" />
<xsd:element ref="Intrastat" minOccurs="0" />
<xsd:element name="AnalysisEntry" minOccurs="0">
<xsd:annotation>
<xsd:documentation>If an analysis entry number has been assigned to this detail line, then use this element to store the analysis entry number. If Analysis Line entry is passed then that will overwrite and analysis number supplied in the AnalysisEntry element.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="AnalysisLineEntry" minOccurs="0">
<xsd:annotation>
<xsd:documentation>If IgnoreAnalysis is set to 'Y" this node and all it's elements are ignored. If you are supplying your own AnalysisEntry Number ensure that you have set IgnoreAnalysis to "Y"</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="AnalysisCode1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify an analysis code 1 for the analysis entry you are createing</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode2" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify and analysis code 2 for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode3" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify an analysis code 3 for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode4" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify and analysis code 4 for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode5" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify and analysis code 5 for the analysis entry you are createing</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="StartDate" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify a start date for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="EndDate" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify an end date for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="EntryAmount" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You must specify and entry amount for the analysis entry you are creating.If the entry amount supplied does not agree with the calculated transaction value at runtime, the entry amount will be overwritten with the transaction value.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Comment" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can enter a comment for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="DebitAnalysisEntry" minOccurs="0">
<xsd:annotation>
<xsd:documentation>If an analysis entry number has been assigned to this detail line, then use this element to store the analysis entry number. If Analysis Line entry is passed then that will overwrite and analysis number supplied in the AnalysisEntry element.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="DebitAnalysisLineEntry" minOccurs="0">
<xsd:annotation>
<xsd:documentation>If IgnoreAnalysis is set to 'Y" this node and all it's elements are ignored. If you are supplying your own AnalysisEntry Number ensure that you have set IgnoreAnalysis to "Y"</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element name="AnalysisCode1" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify an analysis code 1 for the analysis entry you are createing</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode2" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify and analysis code 2 for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode3" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify an analysis code 3 for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode4" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify and analysis code 4 for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AnalysisCode5" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify and analysis code 5 for the analysis entry you are createing</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="StartDate" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify a start date for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="EndDate" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can specify an end date for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="EntryAmount" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You must specify and entry amount for the analysis entry you are creating.If the entry amount supplied does not agree with the calculated transaction value at runtime, the entry amount will be overwritten with the transaction value.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Comment" minOccurs="0">
<xsd:annotation>
<xsd:documentation>You can enter a comment for the analysis entry you are creating</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element ref="IssueDirecttoJob" minOccurs="0" />
<xsd:element ref="Job" minOccurs="0" />
<xsd:element ref="MaterialLine" minOccurs="0" />
<xsd:element ref="AllocComplete" minOccurs="0" />
<xsd:element ref="Lpn" minOccurs="0" />
<xsd:element ref="eSignature" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Notation">
<xsd:annotation>
<xsd:documentation>This element is optional.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PasswordForDebitLedgerCode">
<xsd:annotation>
<xsd:documentation>If the debit ledger code requires a password, this element must contain the relevant password for the specified ledger code.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PasswordForLedgerCode">
<xsd:annotation>
<xsd:documentation>If the ledger code requires a password, this element must contain the relevant password for the specified ledger code.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Pieces">
<xsd:annotation>
<xsd:documentation>If stock code is a unit-qty type stock code and quantity element is not supplied, the quantity of the transaction must be supplied as units and pieces. At least one of these elements must be supplied. None of the quantity fields may be negative.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PostPurchaseOrderReceipts">
<xsd:annotation>
<xsd:documentation>This is the root element.</xsd:documentation>
</xsd:annotation>
<xsd:complexType mixed="false">
<xsd:sequence>
<xsd:element ref="Item" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="PurchaseOrder">
<xsd:annotation>
<xsd:documentation>This element is mandatory and contains the Purchase Order being received.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PurchaseOrderLine">
<xsd:annotation>
<xsd:documentation>This element contains the Purchase Order line being received. If this is not supplied, the 'Warehouse' and 'StockCode' elements must be given so that the correct Purchase Order line can be identified. If there is more than one line for the same warehouse/stock code, the earliest Purchase Order line will be received.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PurchaseOrderLineComplete">
<xsd:annotation>
<xsd:documentation>This element allows the purchase order line to be set to complete upon completion of the receipt. When set to a Y, the purchase order line will be marked as complete, regardless of the quantity remaining.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
<xsd:enumeration value="" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PostCompletedPoLine">
<xsd:annotation>
<xsd:documentation>This element allows the option to still post even if the purchase order line is already set to complete. When set to a Y, the purchase order line will be receipted even if it is already marked as complete. The parameter to ignore warning should be set to Y for this option.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
<xsd:enumeration value="" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Quantity">
<xsd:annotation>
<xsd:documentation>This element is mandatory if stock code is not a unit-qty type stock code. If it is a unit-qty type stock code and this element is supplied, the units and pieces elements must NOT be supplied. It must not be negative.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ReceiptIntoInspection">
<xsd:annotation>
<xsd:documentation>This is the top element for the set of data required for a purchase order line receipt into inspection. It can only be supplied once within each 'Item' instance.</xsd:documentation>
</xsd:annotation>
<xsd:complexType mixed="false">
<xsd:sequence>
<xsd:element ref="Journal" minOccurs="0" />
<xsd:element ref="PurchaseOrder" />
<xsd:element ref="PurchaseOrderLine" minOccurs="0" />
<xsd:element ref="Warehouse" minOccurs="0" />
<xsd:element ref="StockCode" minOccurs="0" />
<xsd:element ref="Quantity" minOccurs="0" />
<xsd:element ref="UnitOfMeasure" minOccurs="0" />
<xsd:element ref="Units" minOccurs="0" />
<xsd:element ref="Pieces" minOccurs="0" />
<xsd:element ref="CountedQuantityComplete" minOccurs="0" />
<xsd:element ref="InspectionLevel" minOccurs="0" />
<xsd:element ref="DeliveryNote" minOccurs="0" />
<xsd:element ref="DeliveryDate" minOccurs="0" />
<xsd:element ref="Certificate" minOccurs="0" />
<xsd:element ref="Narration" minOccurs="0" />
<xsd:element ref="SwitchOnGRNMatching" minOccurs="0" />
<xsd:element ref="GRNNumber" minOccurs="0" />
<xsd:element ref="Lot" minOccurs="0" />
<xsd:element ref="LotExpiryDate" minOccurs="0" />
<xsd:element ref="LotUseByDate" minOccurs="0" />
<xsd:element ref="LotSellByDate" minOccurs="0" />
<xsd:element ref="LotInternalExpiryDate" minOccurs="0" />
<xsd:element ref="LotManufactureDate" minOccurs="0" />
<xsd:element ref="LotDispatchDate" minOccurs="0" />
<xsd:element ref="LotBestBeforeDate" minOccurs="0" />
<xsd:element ref="PurchaseOrderLineComplete" minOccurs="0" />
<xsd:element ref="Serials" minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="SerialRange" minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="BinLocation" minOccurs="0" maxOccurs="1" />
<xsd:element ref="eSignature" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="ReceiptFromInspection">
<xsd:annotation>
<xsd:documentation>This is the top element for the set of data required to receive a GRN into stock from Inspection. It can only be supplied once within each 'Item' instance.</xsd:documentation>
</xsd:annotation>
<xsd:complexType mixed="false">
<xsd:sequence>
<xsd:element ref="Journal" minOccurs="0" />
<xsd:element ref="GRNNumber" />
<xsd:element ref="Lot" minOccurs="0" />
<xsd:element ref="LotExpiryDate" minOccurs="0" />
<xsd:element ref="LotUseByDate" minOccurs="0" />
<xsd:element ref="LotSellByDate" minOccurs="0" />
<xsd:element ref="LotInternalExpiryDate" minOccurs="0" />
<xsd:element ref="LotManufactureDate" minOccurs="0" />
<xsd:element ref="LotDispatchDate" minOccurs="0" />
<xsd:element ref="LotBestBeforeDate" minOccurs="0" />
<xsd:element ref="Quantity" minOccurs="0" />
<xsd:element ref="UnitOfMeasure" minOccurs="0" />
<xsd:element ref="Units" minOccurs="0" />
<xsd:element ref="Pieces" minOccurs="0" />
<xsd:element ref="DeliveryNote" minOccurs="0" />
<xsd:element ref="Concession" minOccurs="0" />
<xsd:element ref="Cost" minOccurs="0" />
<xsd:element ref="CostBasis" />
<xsd:element ref="Reference" minOccurs="0" />
<xsd:element ref="GRNSource" minOccurs="0" />
<xsd:element ref="UseSingleTypeABCElements" minOccurs="0" />
<xsd:element ref="Bins" minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="SelectAvailableSerials" minOccurs="0" />
<xsd:element ref="Serials" minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="IncreaseSalesOrderQuantity" minOccurs="0" />
<xsd:element ref="ChangeSalesOrderStatus" minOccurs="0" />
<xsd:element ref="ApplyCostMultiplier" minOccurs="0" />
<xsd:element ref="CostMultiplier" minOccurs="0" />
<xsd:element ref="NonMerchandiseCost" minOccurs="0" />
<xsd:element ref="NonMerchandiseDistribution" minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="Notation" minOccurs="0" />
<xsd:element ref="LedgerCode" minOccurs="0" />
<xsd:element ref="PasswordForLedgerCode" minOccurs="0" />
<xsd:element ref="DebitLedgerCode" minOccurs="0" />
<xsd:element ref="PasswordForDebitLedgerCode" minOccurs="0" />
<xsd:element ref="CountryOfOrigin" minOccurs="0" />
<xsd:element ref="DeliveryTerms" minOccurs="0" />
<xsd:element ref="ShippingLocation" minOccurs="0" />
<xsd:element ref="NatureOfTransaction" minOccurs="0" />
<xsd:element ref="ModeOfTransport" minOccurs="0" />
<xsd:element ref="TradersReference" minOccurs="0" />
<xsd:element ref="TariffCode" minOccurs="0" />
<xsd:element ref="UnitMass" minOccurs="0" />
<xsd:element ref="SupplementaryUnits" minOccurs="0" />
<xsd:element ref="SupplementaryUnitsFactor" minOccurs="0" />
<xsd:element ref="SupplementaryConvMulDiv" minOccurs="0" />
<xsd:element ref="Intrastat" minOccurs="0" />
<xsd:element ref="IssueDirecttoJob" minOccurs="0" />
<xsd:element ref="Job" minOccurs="0" />
<xsd:element ref="MaterialLine" minOccurs="0" />
<xsd:element ref="AllocComplete" minOccurs="0" />
<xsd:element ref="Lpn" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Reference">
<xsd:annotation>
<xsd:documentation>This element is optional.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SelectAvailableSerials" default="N">
<xsd:annotation>
<xsd:documentation>This element is optional. Valid values are 'N' and 'Y'. Default is 'N'.
When accepting a serialized stock item into stock FROM inspection and this element is set to 'Y', the inspected serial numbers available for the stock item being processed are used until the quantity supplied is satisfied. The 'Serials' data group must not be supplied. This is only applicable to Manual serial items. When associate serials by bin is switched on and this value is a 'Y' then the standard Bins elements should be used to supply the bin and not the serial bin and importantly only one bin can be supplied.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SerialExpiryDate">
<xsd:annotation>
<xsd:documentation>This element contains the expiry date of a new serial number or range of serial numbers being received into stock. Valid format is 'CCYY-MM-DD'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SerialLocation">
<xsd:annotation>
<xsd:documentation>This element contains the location of the serial number or range of serial numbers being received when processing a Purchase Order receipt.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SerialNumber">
<xsd:annotation>
<xsd:documentation>Serial number being received into stock.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SerialPrefix">
<xsd:annotation>
<xsd:documentation>This element specifies the prefix to be used when generating a range of ALPHANUMERIC serial numbers. Prefix + suffix cannot exceed the size of the serial number key which is 20 characters. Mandatory for ALPHANUMERIC serial numbers.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="StartSerialNumber">
<xsd:annotation>
<xsd:documentation>This element specifies the starting serial number when generating a range of NUMERIC serial numbers. Mandatory for numeric serial numbers.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SerialQuantity">
<xsd:annotation>
<xsd:documentation>This element is mandatory and specifies the quantity to receive for the specified serial number. If within the 'Serials' group and manual serial, it can only be 1. If within the 'SerialRange' group, it is the total quantity in the stocking unit of measure, to be received for the specified range.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SerialUnits">
<xsd:annotation>
<xsd:documentation>If stock code is a unit-qty type stock code and the SerialQuantity element is not supplied, the quantity of each serial must be supplied as units and pieces. At least one of these elements must be supplied. None of the quantity fields may be negative.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SerialPieces">
<xsd:annotation>
<xsd:documentation>If stock code is a unit-qty type stock code and the SerialQuantity element is not supplied, the quantity of each serial must be supplied as units and pieces. At least one of these elements must be supplied. None of the quantity fields may be negative.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SerialRange">
<xsd:annotation>
<xsd:documentation>This element is used to specify a prefix and suffix or starting serial number for a range of new serial numbers to be generated. It is only valid when processing receipts or receipts into inspection for manual serialized stock items. It has two formats, depending on the serial key type. If serial numbers are ALPHANUMERIC, a prefix and a suffix need to be supplied. If serial numbers are NUMERIC, a starting serial number is required.</xsd:documentation>
</xsd:annotation>
<xsd:complexType mixed="false">
<xsd:sequence>
<xsd:element ref="SerialPrefix" minOccurs="0" />
<xsd:element ref="SerialSuffix" minOccurs="0" />
<xsd:element ref="StartSerialNumber" minOccurs="0" />
<xsd:element ref="SerialQuantity" />
<xsd:element ref="SerialExpiryDate" minOccurs="0" />
<xsd:element ref="SerialLocation" minOccurs="0" />
<xsd:element name="SerialBin" minOccurs="0">
<xsd:annotation>
<xsd:documentation>Bin location of serial</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="SerialSuffix">
<xsd:annotation>
<xsd:documentation>This element specifies the suffix to be used when generating a range of ALPHANUMERIC serial numbers. The suffix element must be numeric. Prefix + suffix cannot exceed the size of the serial number key which is 20 characters. Mandatory for ALPHANUMERIC serial numbers.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Serials">
<xsd:annotation>
<xsd:documentation>A set of serial numbers and relevant information must be supplied if stock item specified is serialized.</xsd:documentation>
</xsd:annotation>
<xsd:complexType mixed="false">
<xsd:sequence>
<xsd:element ref="SerialNumber" />
<xsd:element ref="SerialQuantity" minOccurs="0" />
<xsd:element ref="SerialUnits" minOccurs="0" />
<xsd:element ref="SerialPieces" minOccurs="0" />
<xsd:element ref="SerialExpiryDate" minOccurs="0" />
<xsd:element ref="SerialLocation" minOccurs="0" />
<xsd:element name="SerialBin" minOccurs="0">
<xsd:annotation>
<xsd:documentation>Bin location of entered serial</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="StockCode">
<xsd:annotation>
<xsd:documentation>This element must be supplied if a 'PurchaseOrderLine' was not entered.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SupplementaryUnits" default="N">
<xsd:annotation>
<xsd:documentation>This element is optional. It is only required if EC VAT system is required. Valid values are 'N' and 'Y'. Default</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SupplementaryUnitsFactor">
<xsd:annotation>
<xsd:documentation>This will only be used if SupplementaryUnits is set to 'Y', and a SupplUnitcode is entered. If used, it is numeric, positive, 6 units and 6 decimals.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SupplementaryConvMulDiv" default="M">
<xsd:annotation>
<xsd:documentation>This will only be used if SupplementaryUnits is set to 'Y', and a SupplUnitcode is entered. Can be set to M or D. Defaults to M</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="M" />
<xsd:enumeration value="D" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="SwitchOnGRNMatching" default="N">
<xsd:annotation>
<xsd:documentation>This element is optional and indicates whether GRN matching must be switched on for a supplier, should it be switched off. However, if the parameter 'GRNMatchingAction' is set to 'R' and GRN matching is switched off, the transaction will reject. Valid values are 'N' and 'Y'. Default is 'N'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TariffCode">
<xsd:annotation>
<xsd:documentation>This element is optional. It is only required if EC VAT system is required.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TradersReference">
<xsd:annotation>
<xsd:documentation>This element is optional. It is only required if EC VAT system is required.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Cost">
<xsd:annotation>
<xsd:documentation>This element is optional and need only be supplied when 'CostBasis' is set to 'M' (manual cost) or 'T' (total cost). It contains the cost of the specified stock code and if it is specified as a total cost, the unit cost will be calculated.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="UnitMass">
<xsd:annotation>
<xsd:documentation>This element is optional. It is only required if EC VAT system is required.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="UnitOfMeasure">
<xsd:annotation>
<xsd:documentation>If quantity was supplied in a unit of measure different from the stocking unit of measure, this element may be supplied to indicate the alternate unit of measure.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Units">
<xsd:annotation>
<xsd:documentation>If stock code is a unit-qty type stock code and quantity element is not supplied, the quantity of the transaction must be supplied as units and pieces. At least one of these elements must be supplied. None of the quantity fields may be negative.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="UseSingleTypeABCElements" default="N">
<xsd:annotation>
<xsd:documentation>This element is only required if ABC costing is in use. If not supplied and ABC costing is required, it defaults to 'N'. Valid values are 'N' and 'Y'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Warehouse">
<xsd:annotation>
<xsd:documentation>This element must be supplied if a 'PurchaseOrderLine' element is not entered.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="IssueDirecttoJob" default="N">
<xsd:annotation>
<xsd:documentation>Issue the item being receipted to a job, defaults to 'N'. Valid values are 'N' and 'Y'.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Job">
<xsd:annotation>
<xsd:documentation>This element can be supplied if IssueDirecttoJob is set to "Y", the job can be prelinked when the PO line is created, or linked on the fly when processing the receipt. If IssueDirecttoJob is set to Y and no job number is passed, the job number (and subcontract operation if defined) prelinked to the PO line will be assumed.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="MaterialLine">
<xsd:annotation>
<xsd:documentation>When issuing direct to a job, and the job entered has more than one allocation for the item (stock code) being receipted, then pass the allocation line number that should be issued to. Will default to 00.</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AllocComplete" default="N">
<xsd:annotation>
<xsd:documentation>This element indicates whether to set the allocation (labor or material) being issued to complete, it defaults to 'N'. Valid values are 'N' and 'Y'. Only relevant when IssueDirecttoJob is "Y"</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:whiteSpace value="preserve" />
<xsd:enumeration value="N" />
<xsd:enumeration value="Y" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Lpn">
<xsd:annotation>
<xsd:documentation>This a root element for License plate number details. This node and all its elements are ignored if License Plate Numbering is not in use.</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" name="LpnDetails">
<xsd:annotation>
<xsd:documentation>This element is used to specify the License plate number receipt details.</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="CreateNewLpn" />
<xsd:element ref="LicensePlateNumber" />
<xsd:element ref="Container" />
<xsd:element ref="NumberOfContainers" />
<xsd:element ref="ContainerQuantity" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Container">
<xsd:annotation>
<xsd:documentation>Container to be used for LPN receipt.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="LicensePlateNumber" type="xsd:string">
<xsd:annotation>
<xsd:documentation>The License plate number to receipt into.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="CreateNewLpn">
<xsd:annotation>
<xsd:documentation>Specify whether to create a new license plate number. Valid values are 'Y' - Yes and 'N' - No. Default is 'Y'.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="ContainerQuantity">
<xsd:annotation>
<xsd:documentation>The quantity for the container.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="NumberOfContainers">
<xsd:annotation>
<xsd:documentation>The number of containers to be used.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:schema>
1. A Receipt or ReceiptIntoInspection type transaction cannot be posted if the stock code is on full hold or on partial hold (SYSPRO menu | Inventory | Setup | Stock Codes | Edit pulldown | On Hold Status) and the parameter IgnoreWarnings is set to N.
2. A transaction cannot be posted if the operator is denied access to the warehouse against the purchase order line or GRN (Setup | Security | Operators | Security | Warehouses).A Receipt or ReceiptIntoInspection transaction cannot be posted if the operator is denied access to the supplier's branch (Setup | Security | Operators | Security | A/P Branches).A Receipt or ReceiptIntoInspection transaction cannot be posted if the supplier against the purchase order is on hold (SYSPRO menu | Accounts Payable | Setup | Suppliers | General 1 tab).
3. The distribution of non-merchandise costs cannot be performed if the operator is denied access to the branch against the entered supplier or the supplier is on hold.A Receipt type transaction cannot be posted for stocked items that are traceable or where inspection is required (SYSPRO menu | Inventory | Setup | Stock Codes | Tracking tab) or non-stocked items that were flagged as requiring inspection against the purchase order line.
When receipting these items, use the ReceiptIntoInspection transaction type.A ReceiptIntoInspection type transaction cannot be posted for stocked items that are not traceable or where inspection is not required (SYSPRO menu | Inventory | Setup | Stock Codes | Tracking tab) or non-stocked items that were not flagged as requiring inspection against the purchase order line.
When receipting these items, use the Receipt transaction type.
4. When receipting a non-stocked item, an error will be returned if the parameter NonStockedWhToUse is not defined and the default warehouse against the operator (Setup | Security | Operators | Defaults tab) or company (Setup | Company Setup | General tab) is also blank.A Receipt or ReceiptIntoInspection type transaction cannot be processed for an ECC controlled item (SYSPRO menu | Inventory | Setup | Stock Codes | Tracking tab) if an Engineering Change Order is currently in progress for the item and receipts from purchase orders have been prevented for all stock codes on the ECO.
5. A transaction cannot be posted if the stock code is a kit type S item or a kit type K item and the parameter IgnoreWarnings is set to N (SYSPRO menu | Inventory | Setup | Stock Codes | Sales tab).
6. If a transaction is being processed for a kit type K item, none of the components may be traceable, require inspection, be serialized (SYSPRO menu | Inventory | Setup | Stock Codes | Tracking tab) or be on hold (SYSPRO menu | Inventory | Setup | Stock Codes | Edit pulldown | On Hold Status). If multiple bins are installed (Setup | Distribution Setup | Inventory | General tab), a primary bin must exist against the component's warehouse.
7. A transaction cannot be posted if multiple bins are installed (Setup | Distribution Setup | Inventory | General tab) and the entered bin location is on hold (SYSPRO menu | Inventory | Inventory Query | Query pulldown | Multiple Bins | Edit pulldown | Hold).
8. The entered quantity cannot be negative.A ReceiptFromInspection type transaction cannot be posted if the entered quantity is greater than the quantity counted less the total quantity accepted, rejected and scrapped.A ReceiptFromInspection type transaction cannot be posted if the current company is not the same as the company in which the purchase order was created.A ReceiptFromInspection type transaction cannot be posted if the entered GRN is on hold (SYSPRO menu | Inventory | Inventory Query | Query pulldown | Purchasing | Inspection).A ReceiptFromInspection type transaction cannot be posted if the operator is denied access to the supplier's branch attached to the GRN (Setup | Security | Operators | Security | A/P Branches).
9. A transaction for a traceable item cannot be posted if the entered lot has been archived.
10. A transaction for a traceable item cannot be posted if the entered lot is on hold (SYSPRO menu | Inventory | Inventory Query | Query pulldown | Lots | Edit pulldown | Change).
11. The number of decimals entered against the Quantity or BinQuantity cannot exceed the maximum number of decimals defined against the stock code (SYSPRO menu | Inventory | Setup | Stock Codes | General tab).A Receipt or ReceiptFromInspection transaction cannot be posted if the new unit cost exceeds the acceptable cost variance percentage defined in Inventory Setup (Setup | Distribution Setup | Inventory | General tab) and the parameterIgnoreWarnings is set to N. In addition, an error message will be returned if the operator is denied access to the security activity: Inventory Override on inventory cost variance (Setup | Security | Operators | Security | Activities).
12. A transaction cannot be posted if the due date against the purchase order line has exceeded the number of days permitted for early/late supply defined in Purchase Orders Setup (Setup | Distribution Setup | Purchase Orders | Details tab) and the parameter IgnoreWarnings is set to N. In addition, an error message will be returned if the operator is denied access to the security activity: P/O Override on early/late supply of P/Order (Setup | Security | Operators | Security | Activities).A Receipt or ReceiptIntoInspection transaction cannot be posted in the event of an under supply exceeding the acceptable quantity over/under supply percentage defined in Purchase Orders Setup (Setup | Distribution Setup | Purchase Orders | Details tab) if the parameter IgnoreWarnings is set to N. In addition, an error message will be returned if the operator is denied access to the security activity: P/O Override on under supply of P/Order (Setup | Security | Operators | Security | Activities).A Receipt or ReceiptIntoInspection transaction cannot be posted in the event of an over supply exceeding the acceptable quantity over/under supply percentage defined in Purchase Orders Setup (Setup | Distribution Setup | Purchase Orders | Details tab) if the parameter IgnoreWarnings is set to N. In addition, an error message will be returned if the operator is denied access to the security activity: P/O Override on over supply of P/Order (Setup | Security | Operators | Security | Activities).A ReceiptFromInspection transaction cannot be posted in the event of an under supply exceeding the acceptable quantity over/under supply percentage defined in Purchase Orders Setup (Setup | Distribution Setup | Purchase Orders | Details tab) if the parameter IgnoreWarnings is set to N. In addition, an error message will be returned if the operator is denied access to the security activity: P/O Override on under receipt from inspection into stock (Setup | Security | Operators | Security | Activities).A ReceiptFromInspection transaction cannot be posted in the event of an over supply exceeding the acceptable quantity over/under supply percentage defined in Purchase Orders Setup (Setup | Distribution Setup | Purchase Orders | Details tab) if the parameter IgnoreWarnings is set to N. In addition, an error message will be returned if the operator is denied access to the security activity: P/O Override on over receipt from inspection into stock (Setup | Security | Operators | Security | Activities).A Receipt transaction cannot be posted, if the parameter IgnoreWarnings is set to N, if the quantity to receipt is greater than the outstanding order quantity against the purchase order line and an acceptable quantity over/under supply percentage has not been defined in Purchase Orders Setup (Setup | Distribution Setup | Purchase Orders | Details tab).
13. An error will be returned if the element UseSingleTypeABCElements is set to Y and Activity Based Costing is not required (Setup | Manufacturing Setup | Bill of Materials | AB Costing tab).
14. An error will be returned if the entered purchase order is complete or has been cancelled.
15. An error will be returned if the entered purchase order has not been printed, the Purchase Order Receipts and Inspection Preference: Give warning if purchase order not yet printed is selected (SYSPRO menu | Purchase Orders | Purchase Order Processing | P/order Receipts | Preferences) and the parameter IgnoreWarnings is set to N.
16. Only merchandise lines can be receipted (i.e. stocked and non-stocked lines).A ReceiptIntoInspection or Receipt type transaction cannot be processed for a line that is attached to an LCT shipment.
17. The entry against the CostBasis element must be P when processing a ReceiptFromInspection type transaction for an LCT item.
18. The entry against the CostBasis element cannot be C when processing a ReceiptFromInspection type transaction for a non-stocked item.
19. Errors will be returned if a purchase order line is linked to a sales order and the sales order has been cancelled, is complete, is in a status of 4 (Warehouse) or is a scheduled order and the stock has not yet been allocated. An error will also be returned if the sales order is in a status of 8 (Released for invoice) and the parameter IgnoreWarnings is set to N.
20. If a purchase order line is linked to a sales order, the sales order line will be flagged as complete if the receipt quantity equals the back order quantity. If the parameter IgnoreWarnings is set to N, a message will be returned under this condition.
21. If the entry against the element CostBasis is T or M, an error will be returned if the operator is denied access to the security activity: P/O Manual entry of cost when receipting P/Orders (Setup | Security | Operators | Security | Activities).
22. If the purchase price against a purchase order line is zero, an error will be returned if the operator is denied access to the security activity: P/O Receipt into stock using zero P/Order price (Setup | Security | Operators | Security | Activities).
23. When processing a ReceiptFromInspection type transaction, an error will be returned if the operator is denied access to either the security activity: P/O Inspection functions or the security activity: P/O Inspection accept (Setup | Security | Operators | Security | Activities).
24. If an entry is not supplied against the DeliveryTerms element, the delivery terms defined against the supplier will be used (SYSPRO menu | Accounts Payable | Setup | Suppliers | Purchasing tab). If delivery terms have not been defined against the supplier, the default delivery terms defined in Tax Options (Setup | Tax Options | Intrastat tab) will be used.
If the EC VAT system is required (Setup | Tax Options | General tab), the nationality code supplied or against the purchase order is a member of the EC and the nationality code does not match the company's nationality code, the DeliveryTerms will be validated.
25. If an entry is not supplied against the NatureOfTransaction element, the nature of transaction code defined against the supplier will be used (SYSPRO menu | Accounts Payable | Setup | Suppliers | Purchasing tab). If the nature of transaction code has not been defined against the supplier, the nature of transaction code defined in Tax Options (Setup | Tax Options | Intrastat tab) will be used.
If the EC VAT system is required (Setup | Tax Options | General tab), the nationality code supplied or against the purchase order is a member of the EC and the nationality code does not match the company's nationality code, theNatureOfTransaction will be validated.
26. When processing a Receipt or ReceiptFromInspection type transaction for a non-stocked line where a DebitLedgerCode has been supplied that differs from the entry against the purchase order line and Commitment Accounting is required for purchase orders (Setup | Financial Setup | General Ledger Setup | Commitments tab), the budget against the supplied ledger code will be checked if the General Ledger Setup option: Validate against budget (Setup | Financial Setup | General Ledger Setup | Commitments tab) is selected for purchase orders.
If the value of the purchase order line does not exceed the budget, the receipt is processed. If the value of the purchase order line exceeds the budget, an error or warning message will be displayed depending on how the system is setup.
No commitment values will be saved if the supplied ledger code is the non-stocked control account, subcontract control account, or WIP control account.
The transaction date will be used to determine in which period the commitment falls. If the period cannot be determined, the period will be unallocated and the transaction will not be validated against the budget. If a transaction is entered for the next year, the current year's period end dates will be used to determine the correct period for the next year but no brought forward balances will be considered when determining if a transaction exceeds budget.
When a value is validated against the budget for the period, the value of the transaction plus the period uncommitted value plus the period committed value plus the period actual value must not exceed the budget for the period.
If the value exceeds the budget for the period, a warning or error message will be displayed under the following circumstances:
- If the operator has access to the security activity: G/L Allow commitment over period budget (Setup | Security | Operators | Security | Activities) but the General Ledger Setup option: Warn if budget exceeded (Setup | Financial Setup | General Ledger Setup | Commitments tab) is selected, a warning message will be displayed that the budget has been exceeded for the period but the line can still be saved.
- If the operator has been denied access to the security activity: G/L Allow commitment over period budget, an error message will be displayed that the budget has been exceeded for the period and the operator will be unable to save the line.
- If the operator has access to the security activity: G/L Allow commitment over period budget and the General Ledger Setup option: Warn if budget exceeded is not selected, the line will be saved without any warning that the budget has been exceeded for the period.
When a value is validated against the year to date budget, the value of the transaction plus the brought forward uncommitted value plus the year to date uncommitted value plus the brought forward committed value plus the year to date committed value plus the year to date actual value must not exceed the year to date budget.
If the value exceeds the year to date budget, a warning or error message will be displayed under the following circumstances:
- If the operator has access to the security activity: G/L Allow commitment over YTD budget (Setup | Security | Operators | Security | Activities) but the General Ledger Setup option: Warn if budget exceeded is selected, a warning message will be displayed that the year to date budget has been exceeded but the line can still be saved.
- If the operator has been denied access to the security activity: G/L Allow commitment over YTD budget, an error message will be displayed that the year to date budget has been exceeded and the operator will be unable to save the line.
- If the operator has access to the security activity: G/L Allow commitment over YTD budget and the General Ledger Setup option: Warn if budget exceeded is not selected, the line will be saved without any warning that the year to date budget has been exceeded.
When a value is validated against the annual budget, the value of the transaction plus the brought forward uncommitted value plus the total year uncommitted value plus the brought forward committed value plus the total year committed value plus the total year actual value must not exceed the annual budget.
If the value exceeds the annual budget, a warning or error message will be displayed under the following circumstances:
- If the operator has access to the security activity: G/L Allow commitment over annual budget (Setup | Security | Operators | Security | Activities) but the General Ledger Setup option: Warn if budget exceeded is selected, a warning message will be displayed that the annual budget has been exceeded but the line can still be saved.
- If the operator has been denied access to the security activity: G/L Allow commitment over annual budget, an error message will be displayed that the annual budget has been exceeded and the operator will be unable to save the line.
1. If the operator has access to the security activity: G/L Allow commitment over annual budget and the General Ledger Setup option: Warn if budget exceeded is not selected, the line will be saved without any warning that the annual budget has been exceeded.
2. If the GRN suspense system is required (Setup | Distribution Setup | Purchase Orders | GRN tab) but GRN matching is not required against the supplier (SYSPRO menu | Accounts Payable | Setup | Suppliers | Purchasing tab), an error will be returned if the parameter, GRNMatchingAction is set to R, unless the element SwitchOnGRNMatching is set to Y.
3. If Inventory is integrated to General Ledger by report, in detail or in summary (Setup | General Ledger Integration | General Ledger tab), an error will be returned if the warehouse control and/or warehouse variance accounts are not defined against the warehouse that is attached to the purchase order line (SYSPRO menu | Inventory | Setup | Warehouses).
In the case of non-stocked items, this will be the warehouse defined against the parameter NonStockedWhToUse or if not defined, the default warehouse against the operator (Setup | Security | Operators | Defaults tab) or company (Setup | Company Setup | General tab), if the default warehouse against the operator is also blank.
4. If Inventory is integrated to General Ledger by report, in detail or in summary (Setup | General Ledger Integration | General Ledger tab), an error will be returned if a non-stocked line is being receipted and the appropriate debit ledger code cannot be located.
If an entry was not made against the element DebitLedgerCode and the ledger code cannot be located against the purchase order line nor is an entry defined against the non-stocked control account in General Ledger Integration (Setup | General Ledger Integration | Inventory tab), an error will be returned.
In addition, if Inventory is integrated to General Ledger in detail or summary, error messages will be returned if the ledger code is a control account (and the parameterIgnoreWarnings is set to N), the ledger code is on hold or a password is defined against the ledger code, which does not match the password entered against the element PasswordForDebitLedgerCode (SYSPRO menu | General Ledger | Setup | General Ledger Codes).
5. If Inventory is integrated to General Ledger in detail or summary (Setup | General Ledger Integration | General Ledger tab) and a ledger code is entered against the element LedgerCode, the entry will be validated. In addition, error messages will be returned if the ledger code is a control account (and the parameter IgnoreWarnings is set to N), the ledger code is on hold or a password is defined against the ledger code, which does not match the password entered against the elementPasswordForLedgerCode (SYSPRO menu | General Ledger | Setup | General Ledger Codes).
6. If Inventory is integrated to General Ledger by report, in detail or in summary (Setup | General Ledger Integration | General Ledger tab) and a ledger code is not entered against the element LedgerCode, the system will attempt to locate the appropriate entry.
If the GRN suspense system is required and either GRN matching is required against the supplier or the elementSwitchOnGRNMatching is set to Y, the GRN suspense account will be located either against the warehouse (if the line is stocked) or in General Ledger Integration (if the line is either non-stocked or the account against the warehouse is blank).
If the GRN suspense system is not required, the system will attempt to locate the appropriate receipts interface entry depending on the integration level defined (Setup | General Ledger Integration | Inventory tab | Maintain Inventory Interfaces | Functions pulldown | Integration Level). If an appropriate ledger code cannot be located, an error message will be returned.
In addition, error messages will be returned if the located ledger code is a control account (and the parameter IgnoreWarnings is set to N) or the ledger code is on hold (SYSPRO menu | General Ledger | Setup | General Ledger Codes).
7. When applying a cost multiplier and distributing the non-merchandise amount to a ledger code, if Inventory is integrated to General Ledger in detail or summary (Setup | General Ledger Integration | General Ledger tab) the ledger code entered against the element NmLedgerCode will be validated. In addition, error messages will be returned if the ledger code is a control account (and the parameter IgnoreWarnings is set to N) or is on hold (SYSPRO menu | General Ledger | Setup | General Ledger Codes).
8. Refer to PORTOR.XSD and PORTOR.XML for the parameters schema and an instance of an XML document for this business object.
9. Refer to PORTORDOC.XSD and PORTORDOC.XML for the schema and an instance of an XML document for this business object.
Output XML
The OUT.XML indicates a sample of the XML returned by this business object.
<?xml version="1.0" encoding="Windows-1252"?>
<!-- Copyright 1994-2021 SYSPRO Ltd.-->
<!--
This is an example XMLOut instance to demonstrate
use of the Purchase Order Receipts Business Object
-->
<postpurchaseorderreceipts Language="05" CssStyle="" DecFormat="1" DateFormat="01" Role="01" Version="6.0.019">
<Item>
<Receipt>
<GRN>100000457</GRN>
<LotNumber>1091</LotNumber>
<PurchaseOrder>000661</PurchaseOrder>
<PurchaseOrderLine>0001</PurchaseOrderLine>
</Receipt>
<Receipt>
<GRN>100000458</GRN>
<PurchaseOrder>000661</PurchaseOrder>
<PurchaseOrderLine>0002</PurchaseOrderLine>
</Receipt>
<ItemNumber>000002</ItemNumber>
</Item>
<Key>
<JnlYear>2006</JnlYear>
<JnlMonth>04</JnlMonth>
<Journal>00745</Journal>
<EntryNumber>00004</EntryNumber>
<Warehouse>FG</Warehouse>
- <GlJournal>
<GlYear>2006</GlYear>
<GlPeriod>04</GlPeriod>
<GlJournal>00309</GlJournal>
</GlJournal>
</Key>
</postpurchaseorderreceipts>
Refer to PORTOROUT.XML for a sample of the XML returned by this business object.
Prerequisites
Either the Inventory or Purchase Orders module must be installed to run this business object.
The Purchase Orders Primary Posting functional area must be licensed.
Limitations
No limitations apply to this business object.
Copyright © 2026 Syspro PTY Ltd.