/// <summary>
        /// Validate the typed control segments
        /// </summary>
        public static void Run()
        {
            Debug.WriteLine("******************************");
            Debug.WriteLine(MethodBase.GetCurrentMethod().Name);
            Debug.WriteLine("******************************");

            Stream ncpdpStream = File.OpenRead(Directory.GetCurrentDirectory() + @"\..\..\..\Files\ClaimBillings");

            using (var ncpdpReader = new NcpdpTelcoReader(ncpdpStream, "EdiFabric.Templates.Ncpdp"))
            {
                while (ncpdpReader.Read())
                {
                    var header = ncpdpReader.Item as TransmissionHeader;
                    if (header != null)
                    {
                        //  Validate
                        var headerErrors = header.Validate();
                        //  Pull the sending application from TransmissionHeader
                        var senderId = header.SenderId_2;
                        Debug.WriteLine("Sending application:");
                        Debug.WriteLine(senderId);
                    }
                }
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Reads billing claims batched up in the same transmission.
        /// </summary>
        public static void Run()
        {
            Debug.WriteLine("******************************");
            Debug.WriteLine(MethodBase.GetCurrentMethod().Name);
            Debug.WriteLine("******************************");

            //  1.  Load to a stream
            Stream ncpdpStream = File.OpenRead(Directory.GetCurrentDirectory() + @"\..\..\..\Files\ClaimBillings");

            //  2.  Read multiple messages batched up in the same transmission
            using (var ncpdpReader = new NcpdpTelcoReader(ncpdpStream, "EdiFabric.Templates.Ncpdp"))
            {
                while (ncpdpReader.Read())
                {
                    //  Process dispenses if no parsing errors
                    var claim = ncpdpReader.Item as TSB1;
                    if (claim != null && !claim.HasErrors)
                    {
                        ProcessClaim(ncpdpReader.CurrentTransmissionHeader, claim);
                    }
                }
            }
        }