Beispiel #1
0
        private EDIXmlTransactionSet create_transaction_set(OrderRequestReceivedMessage ackMessage)
        {
            if (ackMessage.LineCount == 0)
            {
                throw new Exception("PO contains no line items!");
            }
            var doc = new EDIXmlTransactionSet(_segmentFactory)
            {
                ISA = _repo.GetNextISA(GroupTypeConstants.POAcknowledgement, BusinessPartner.Initech.Number)
            };

            var docDef = _repo.GetNextDocument(doc.ISA, 855);

            doc.SetHeader("855", docDef.ControlNumber);

            doc.AddSegment(get_begin_segment(ackMessage));

            doc.AddSegment(_segmentFactory.GetAddressName("Austin Foam Plastics",
                                                          NameCodeConstants.Vendor, "", ""));

            var lines = new EDIXmlMixedContainer("PO1");

            ackMessage.LineItems.ForEach(l => add_line(lines, l));

            doc.AddLoop(lines);

            doc.AddSegment(_segmentFactory.GetTransactionTotal(ackMessage.LineCount));

            doc.SetFooter();

            return(doc);
        }
Beispiel #2
0
        private void add_address(EDIXmlMixedContainer container, Address address, string qualifier, string code)
        {
            if (address == null)
            {
                return;
            }

            container.AddSegment(_segmentFactory.GetAddressName(address.AddressName, address.AddressType, qualifier, code));
            container.AddSegment(_segmentFactory.GetAddressLine(address.Address1, address.Address2));
            container.AddSegment(_segmentFactory.GetGeographicInfo(address.City, address.State, address.Zip, "US"));
        }
Beispiel #3
0
 public void AddAddress(Address addr, Qualifier codeQualifier)
 {
     AddSegment(_factory.GetAddressName(addr.AddressName, addr.AddressType, codeQualifier.Value, addr.AddressCode.CustomerCode));
     AddSegment(_factory.GetAddressLine(addr.Address1, addr.Address2));
     AddSegment(_factory.GetGeographicInfo(addr.City, addr.State, addr.Zip, addr.Country));
 }
Beispiel #4
0
 private void add_address(EDIXmlMixedContainer container, Address address)
 {
     container.AddSegment(_segmentFactory.GetAddressName(address.AddressName, address.AddressType, "", ""));
     container.AddSegment(_segmentFactory.GetAddressLine(address.Address1, address.Address2));
     container.AddSegment(_segmentFactory.GetGeographicInfo(address.City, address.State, address.Zip, "US"));
 }