コード例 #1
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            BedLocation = segments.Length > 1 && segments[1].Length > 0 ? TypeSerializer.Deserialize <PersonLocation>(segments[1], false, seps) : null;
            BedStatus   = segments.Length > 2 && segments[2].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[2], false, seps) : null;
        }
コード例 #2
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            OrderControl           = segments.Length > 1 && segments[1].Length > 0 ? segments[1] : null;
            PlacerOrderNumber      = segments.Length > 2 && segments[2].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[2], false, seps) : null;
            FillerOrderNumber      = segments.Length > 3 && segments[3].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[3], false, seps) : null;
            PlacerGroupNumber      = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[4], false, seps) : null;
            OrderStatus            = segments.Length > 5 && segments[5].Length > 0 ? segments[5] : null;
            ResponseFlag           = segments.Length > 6 && segments[6].Length > 0 ? segments[6] : null;
            QuantityTiming         = segments.Length > 7 && segments[7].Length > 0 ? segments[7].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <TimingQuantity>(x, false, seps)) : null;
            ParentOrder            = segments.Length > 8 && segments[8].Length > 0 ? TypeSerializer.Deserialize <ParentOrder>(segments[8], false, seps) : null;
            DateTimeOfTransaction  = segments.Length > 9 && segments[9].Length > 0 ? segments[9].ToNullableDateTime() : null;
            EnteredBy              = segments.Length > 10 && segments[10].Length > 0 ? segments[10].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(x, false, seps)) : null;
            VerifiedBy             = segments.Length > 11 && segments[11].Length > 0 ? segments[11].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(x, false, seps)) : null;
            OrderingProvider       = segments.Length > 12 && segments[12].Length > 0 ? segments[12].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(x, false, seps)) : null;
            EnterersLocation       = segments.Length > 13 && segments[13].Length > 0 ? TypeSerializer.Deserialize <PersonLocation>(segments[13], false, seps) : null;
            CallBackPhoneNumber    = segments.Length > 14 && segments[14].Length > 0 ? segments[14].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(x, false, seps)) : null;
            OrderEffectiveDateTime = segments.Length > 15 && segments[15].Length > 0 ? segments[15].ToNullableDateTime() : null;
            OrderControlCodeReason = segments.Length > 16 && segments[16].Length > 0 ? TypeSerializer.Deserialize <CodedElement>(segments[16], false, seps) : null;
            EnteringOrganization   = segments.Length > 17 && segments[17].Length > 0 ? TypeSerializer.Deserialize <CodedElement>(segments[17], false, seps) : null;
            EnteringDevice         = segments.Length > 18 && segments[18].Length > 0 ? TypeSerializer.Deserialize <CodedElement>(segments[18], false, seps) : null;
            ActionBy = segments.Length > 19 && segments[19].Length > 0 ? segments[19].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(x, false, seps)) : null;
            AdvancedBeneficiaryNoticeCode = segments.Length > 20 && segments[20].Length > 0 ? TypeSerializer.Deserialize <CodedElement>(segments[20], false, seps) : null;
            OrderingFacilityName          = segments.Length > 21 && segments[21].Length > 0 ? segments[21].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeNameAndIdNumberForOrganizations>(x, false, seps)) : null;
            OrderingFacilityAddress       = segments.Length > 22 && segments[22].Length > 0 ? segments[22].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedAddress>(x, false, seps)) : null;
            OrderingFacilityPhoneNumber   = segments.Length > 23 && segments[23].Length > 0 ? segments[23].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(x, false, seps)) : null;
            OrderingProviderAddress       = segments.Length > 24 && segments[24].Length > 0 ? segments[24].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedAddress>(x, false, seps)) : null;
            OrderStatusModifier           = segments.Length > 25 && segments[25].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[25], false, seps) : null;
        }
コード例 #3
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            CandidateConfidence = segments.Length > 1 && segments[1].Length > 0 ? segments[1].ToNullableDecimal() : null;
            MatchReasonCode     = segments.Length > 2 && segments[2].Length > 0 ? segments[2].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            AlgorithmDescriptor = segments.Length > 3 && segments[3].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[3], false, seps) : null;
        }
コード例 #4
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            ReferenceInteractionNumber = segments.Length > 1 && segments[1].Length > 0 ? segments[1].ToNullableDecimal() : null;
            InteractionTypeIdentifier  = segments.Length > 2 && segments[2].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[2], false, seps) : null;
            InteractionActiveState     = segments.Length > 3 && segments[3].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[3], false, seps) : null;
        }
コード例 #5
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            StudyPhaseIdentifier    = segments.Length > 1 && segments[1].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[1], false, seps) : null;
            DateTimeStudyPhaseBegan = segments.Length > 2 && segments[2].Length > 0 ? segments[2].ToNullableDateTime() : null;
            DateTimeStudyPhaseEnded = segments.Length > 3 && segments[3].Length > 0 ? segments[3].ToNullableDateTime() : null;
            StudyPhaseEvaluability  = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[4], false, seps) : null;
        }
コード例 #6
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            WhenToCharge     = segments.Length > 1 && segments[1].Length > 0 ? TypeSerializer.Deserialize <ChargeCodeAndDate>(segments[1], false, seps) : null;
            ChargeType       = segments.Length > 2 && segments[2].Length > 0 ? segments[2] : null;
            AccountId        = segments.Length > 3 && segments[3].Length > 0 ? TypeSerializer.Deserialize <ExtendedCompositeIdWithCheckDigit>(segments[3], false, seps) : null;
            ChargeTypeReason = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[4], false, seps) : null;
        }
コード例 #7
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            ApplicationMethodIdentifier     = segments.Length > 1 && segments[1].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[1], false, seps) : null;
            SubstanceLotNumber              = segments.Length > 2 && segments[2].Length > 0 ? segments[2] : null;
            SubstanceContainerIdentifier    = segments.Length > 3 && segments[3].Length > 0 ? segments[3] : null;
            SubstanceManufacturerIdentifier = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[4], false, seps) : null;
        }
コード例 #8
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            EquipmentInstanceIdentifier = segments.Length > 1 && segments[1].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[1], false, seps) : null;
            EventDateTime           = segments.Length > 2 && segments[2].Length > 0 ? segments[2].ToNullableDateTime() : null;
            EquipmentState          = segments.Length > 3 && segments[3].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[3], false, seps) : null;
            LocalRemoteControlState = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[4], false, seps) : null;
            AlertLevel = segments.Length > 5 && segments[5].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[5], false, seps) : null;
        }
コード例 #9
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            PrimaryKeyValueLch             = segments.Length > 1 && segments[1].Length > 0 ? TypeSerializer.Deserialize <PersonLocation>(segments[1], false, seps) : null;
            SegmentActionCode              = segments.Length > 2 && segments[2].Length > 0 ? segments[2] : null;
            SegmentUniqueKey               = segments.Length > 3 && segments[3].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[3], false, seps) : null;
            LocationCharacteristicId       = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[4], false, seps) : null;
            LocationCharacteristicValueLch = segments.Length > 5 && segments[5].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[5], false, seps) : null;
        }
コード例 #10
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            Route = segments.Length > 1 && segments[1].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[1], false, seps) : null;
            AdministrationSite         = segments.Length > 2 && segments[2].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[2], false, seps) : null;
            AdministrationDevice       = segments.Length > 3 && segments[3].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[3], false, seps) : null;
            AdministrationMethod       = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[4], false, seps) : null;
            RoutingInstruction         = segments.Length > 5 && segments[5].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[5], false, seps) : null;
            AdministrationSiteModifier = segments.Length > 6 && segments[6].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[6], false, seps) : null;
        }
コード例 #11
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            SetIdPye  = segments.Length > 1 && segments[1].Length > 0 ? segments[1].ToNullableUInt() : null;
            PayeeType = segments.Length > 2 && segments[2].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[2], false, seps) : null;
            PayeeRelationshipToInvoicePatient = segments.Length > 3 && segments[3].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[3], false, seps) : null;
            PayeeIdentificationList           = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <ExtendedCompositeNameAndIdNumberForOrganizations>(segments[4], false, seps) : null;
            PayeePersonName = segments.Length > 5 && segments[5].Length > 0 ? TypeSerializer.Deserialize <ExtendedPersonName>(segments[5], false, seps) : null;
            PayeeAddress    = segments.Length > 6 && segments[6].Length > 0 ? TypeSerializer.Deserialize <ExtendedAddress>(segments[6], false, seps) : null;
            PaymentMethod   = segments.Length > 7 && segments[7].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[7], false, seps) : null;
        }
コード例 #12
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            SetIdBtx                           = segments.Length > 1 && segments[1].Length > 0 ? segments[1].ToNullableUInt() : null;
            BcDonationId                       = segments.Length > 2 && segments[2].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[2], false, seps) : null;
            BcComponent                        = segments.Length > 3 && segments[3].Length > 0 ? TypeSerializer.Deserialize <CodedWithNoExceptions>(segments[3], false, seps) : null;
            BcBloodGroup                       = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <CodedWithNoExceptions>(segments[4], false, seps) : null;
            CpCommercialProduct                = segments.Length > 5 && segments[5].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[5], false, seps) : null;
            CpManufacturer                     = segments.Length > 6 && segments[6].Length > 0 ? TypeSerializer.Deserialize <ExtendedCompositeNameAndIdNumberForOrganizations>(segments[6], false, seps) : null;
            CpLotNumber                        = segments.Length > 7 && segments[7].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[7], false, seps) : null;
            BpQuantity                         = segments.Length > 8 && segments[8].Length > 0 ? segments[8].ToNullableDecimal() : null;
            BpAmount                           = segments.Length > 9 && segments[9].Length > 0 ? segments[9].ToNullableDecimal() : null;
            BpUnits                            = segments.Length > 10 && segments[10].Length > 0 ? TypeSerializer.Deserialize <CodedElement>(segments[10], false, seps) : null;
            BpTransfusionDispositionStatus     = segments.Length > 11 && segments[11].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[11], false, seps) : null;
            BpMessageStatus                    = segments.Length > 12 && segments[12].Length > 0 ? segments[12] : null;
            BpDateTimeOfStatus                 = segments.Length > 13 && segments[13].Length > 0 ? segments[13].ToNullableDateTime() : null;
            BpTransfusionAdministrator         = segments.Length > 14 && segments[14].Length > 0 ? TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(segments[14], false, seps) : null;
            BpTransfusionVerifier              = segments.Length > 15 && segments[15].Length > 0 ? TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(segments[15], false, seps) : null;
            BpTransfusionStartDateTimeOfStatus = segments.Length > 16 && segments[16].Length > 0 ? segments[16].ToNullableDateTime() : null;
            BpTransfusionEndDateTimeOfStatus   = segments.Length > 17 && segments[17].Length > 0 ? segments[17].ToNullableDateTime() : null;
            BpAdverseReactionType              = segments.Length > 18 && segments[18].Length > 0 ? segments[18].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            BpTransfusionInterruptedReason     = segments.Length > 19 && segments[19].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[19], false, seps) : null;
        }
コード例 #13
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            SetIdGt1                           = segments.Length > 1 && segments[1].Length > 0 ? segments[1].ToNullableUInt() : null;
            GuarantorNumber                    = segments.Length > 2 && segments[2].Length > 0 ? segments[2].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdWithCheckDigit>(x, false, seps)) : null;
            GuarantorName                      = segments.Length > 3 && segments[3].Length > 0 ? segments[3].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedPersonName>(x, false, seps)) : null;
            GuarantorSpouseName                = segments.Length > 4 && segments[4].Length > 0 ? segments[4].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedPersonName>(x, false, seps)) : null;
            GuarantorAddress                   = segments.Length > 5 && segments[5].Length > 0 ? segments[5].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedAddress>(x, false, seps)) : null;
            GuarantorPhNumHome                 = segments.Length > 6 && segments[6].Length > 0 ? segments[6].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(x, false, seps)) : null;
            GuarantorPhNumBusiness             = segments.Length > 7 && segments[7].Length > 0 ? segments[7].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(x, false, seps)) : null;
            GuarantorDateTimeOfBirth           = segments.Length > 8 && segments[8].Length > 0 ? segments[8].ToNullableDateTime() : null;
            GuarantorAdministrativeSex         = segments.Length > 9 && segments[9].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[9], false, seps) : null;
            GuarantorType                      = segments.Length > 10 && segments[10].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[10], false, seps) : null;
            GuarantorRelationship              = segments.Length > 11 && segments[11].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[11], false, seps) : null;
            GuarantorSsn                       = segments.Length > 12 && segments[12].Length > 0 ? segments[12] : null;
            GuarantorDateBegin                 = segments.Length > 13 && segments[13].Length > 0 ? segments[13].ToNullableDateTime() : null;
            GuarantorDateEnd                   = segments.Length > 14 && segments[14].Length > 0 ? segments[14].ToNullableDateTime() : null;
            GuarantorPriority                  = segments.Length > 15 && segments[15].Length > 0 ? segments[15].ToNullableDecimal() : null;
            GuarantorEmployerName              = segments.Length > 16 && segments[16].Length > 0 ? segments[16].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedPersonName>(x, false, seps)) : null;
            GuarantorEmployerAddress           = segments.Length > 17 && segments[17].Length > 0 ? segments[17].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedAddress>(x, false, seps)) : null;
            GuarantorEmployerPhoneNumber       = segments.Length > 18 && segments[18].Length > 0 ? segments[18].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(x, false, seps)) : null;
            GuarantorEmployeeIdNumber          = segments.Length > 19 && segments[19].Length > 0 ? segments[19].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdWithCheckDigit>(x, false, seps)) : null;
            GuarantorEmploymentStatus          = segments.Length > 20 && segments[20].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[20], false, seps) : null;
            GuarantorOrganizationName          = segments.Length > 21 && segments[21].Length > 0 ? segments[21].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeNameAndIdNumberForOrganizations>(x, false, seps)) : null;
            GuarantorBillingHoldFlag           = segments.Length > 22 && segments[22].Length > 0 ? segments[22] : null;
            GuarantorCreditRatingCode          = segments.Length > 23 && segments[23].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[23], false, seps) : null;
            GuarantorDeathDateAndTime          = segments.Length > 24 && segments[24].Length > 0 ? segments[24].ToNullableDateTime() : null;
            GuarantorDeathFlag                 = segments.Length > 25 && segments[25].Length > 0 ? segments[25] : null;
            GuarantorChargeAdjustmentCode      = segments.Length > 26 && segments[26].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[26], false, seps) : null;
            GuarantorHouseholdAnnualIncome     = segments.Length > 27 && segments[27].Length > 0 ? TypeSerializer.Deserialize <CompositePrice>(segments[27], false, seps) : null;
            GuarantorHouseholdSize             = segments.Length > 28 && segments[28].Length > 0 ? segments[28].ToNullableDecimal() : null;
            GuarantorEmployerIdNumber          = segments.Length > 29 && segments[29].Length > 0 ? segments[29].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdWithCheckDigit>(x, false, seps)) : null;
            GuarantorMaritalStatusCode         = segments.Length > 30 && segments[30].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[30], false, seps) : null;
            GuarantorHireEffectiveDate         = segments.Length > 31 && segments[31].Length > 0 ? segments[31].ToNullableDateTime() : null;
            EmploymentStopDate                 = segments.Length > 32 && segments[32].Length > 0 ? segments[32].ToNullableDateTime() : null;
            LivingDependency                   = segments.Length > 33 && segments[33].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[33], false, seps) : null;
            AmbulatoryStatus                   = segments.Length > 34 && segments[34].Length > 0 ? segments[34].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            Citizenship                        = segments.Length > 35 && segments[35].Length > 0 ? segments[35].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            PrimaryLanguage                    = segments.Length > 36 && segments[36].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[36], false, seps) : null;
            LivingArrangement                  = segments.Length > 37 && segments[37].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[37], false, seps) : null;
            PublicityCode                      = segments.Length > 38 && segments[38].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[38], false, seps) : null;
            ProtectionIndicator                = segments.Length > 39 && segments[39].Length > 0 ? segments[39] : null;
            StudentIndicator                   = segments.Length > 40 && segments[40].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[40], false, seps) : null;
            Religion                           = segments.Length > 41 && segments[41].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[41], false, seps) : null;
            MothersMaidenName                  = segments.Length > 42 && segments[42].Length > 0 ? segments[42].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedPersonName>(x, false, seps)) : null;
            Nationality                        = segments.Length > 43 && segments[43].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[43], false, seps) : null;
            EthnicGroup                        = segments.Length > 44 && segments[44].Length > 0 ? segments[44].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            ContactPersonsName                 = segments.Length > 45 && segments[45].Length > 0 ? segments[45].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedPersonName>(x, false, seps)) : null;
            ContactPersonsTelephoneNumber      = segments.Length > 46 && segments[46].Length > 0 ? segments[46].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(x, false, seps)) : null;
            ContactReason                      = segments.Length > 47 && segments[47].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[47], false, seps) : null;
            ContactRelationship                = segments.Length > 48 && segments[48].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[48], false, seps) : null;
            JobTitle                           = segments.Length > 49 && segments[49].Length > 0 ? segments[49] : null;
            JobCodeClass                       = segments.Length > 50 && segments[50].Length > 0 ? TypeSerializer.Deserialize <JobCodeClass>(segments[50], false, seps) : null;
            GuarantorEmployersOrganizationName = segments.Length > 51 && segments[51].Length > 0 ? segments[51].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeNameAndIdNumberForOrganizations>(x, false, seps)) : null;
            Handicap                           = segments.Length > 52 && segments[52].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[52], false, seps) : null;
            JobStatus                          = segments.Length > 53 && segments[53].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[53], false, seps) : null;
            GuarantorFinancialClass            = segments.Length > 54 && segments[54].Length > 0 ? TypeSerializer.Deserialize <FinancialClass>(segments[54], false, seps) : null;
            GuarantorRace                      = segments.Length > 55 && segments[55].Length > 0 ? segments[55].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            GuarantorBirthPlace                = segments.Length > 56 && segments[56].Length > 0 ? segments[56] : null;
            VipIndicator                       = segments.Length > 57 && segments[57].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[57], false, seps) : null;
        }
コード例 #14
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            SequenceNumberTestObservationMasterFile = segments.Length > 1 && segments[1].Length > 0 ? segments[1].ToNullableDecimal() : null;
            ProducersServiceTestObservationId       = segments.Length > 2 && segments[2].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[2], false, seps) : null;
            PermittedDataTypes     = segments.Length > 3 && segments[3].Length > 0 ? segments[3].Split(seps.FieldRepeatSeparator, StringSplitOptions.None) : null;
            SpecimenRequired       = segments.Length > 4 && segments[4].Length > 0 ? segments[4] : null;
            ProducerId             = segments.Length > 5 && segments[5].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[5], false, seps) : null;
            ObservationDescription = segments.Length > 6 && segments[6].Length > 0 ? TypeSerializer.Deserialize <Text>(segments[6], false, seps) : null;
            OtherServiceTestObservationIdsForTheObservation = segments.Length > 7 && segments[7].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[7], false, seps) : null;
            OtherNames = segments.Length > 8 && segments[8].Length > 0 ? segments[8].Split(seps.FieldRepeatSeparator, StringSplitOptions.None) : null;
            PreferredReportNameForTheObservation          = segments.Length > 9 && segments[9].Length > 0 ? segments[9] : null;
            PreferredShortNameOrMnemonicForTheObservation = segments.Length > 10 && segments[10].Length > 0 ? segments[10] : null;
            PreferredLongNameForTheObservation            = segments.Length > 11 && segments[11].Length > 0 ? segments[11] : null;
            Orderability = segments.Length > 12 && segments[12].Length > 0 ? segments[12] : null;
            IdentityOfInstrumentUsedToPerformThisStudy = segments.Length > 13 && segments[13].Length > 0 ? segments[13].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            CodedRepresentationOfMethod           = segments.Length > 14 && segments[14].Length > 0 ? segments[14].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            PortableDeviceIndicator               = segments.Length > 15 && segments[15].Length > 0 ? segments[15] : null;
            ObservationProducingDepartmentSection = segments.Length > 16 && segments[16].Length > 0 ? segments[16].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            TelephoneNumberOfSection              = segments.Length > 17 && segments[17].Length > 0 ? TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(segments[17], false, seps) : null;
            NatureOfServiceTestObservation        = segments.Length > 18 && segments[18].Length > 0 ? segments[18] : null;
            ReportSubheader    = segments.Length > 19 && segments[19].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[19], false, seps) : null;
            ReportDisplayOrder = segments.Length > 20 && segments[20].Length > 0 ? segments[20] : null;
            DateTimeStampForAnyChangeInDefinitionForTheObservation = segments.Length > 21 && segments[21].Length > 0 ? segments[21].ToNullableDateTime() : null;
            EffectiveDateTimeOfChange = segments.Length > 22 && segments[22].Length > 0 ? segments[22].ToNullableDateTime() : null;
            TypicalTurnAroundTime     = segments.Length > 23 && segments[23].Length > 0 ? segments[23].ToNullableDecimal() : null;
            ProcessingTime            = segments.Length > 24 && segments[24].Length > 0 ? segments[24].ToNullableDecimal() : null;
            ProcessingPriority        = segments.Length > 25 && segments[25].Length > 0 ? segments[25].Split(seps.FieldRepeatSeparator, StringSplitOptions.None) : null;
            ReportingPriority         = segments.Length > 26 && segments[26].Length > 0 ? segments[26] : null;
            OutsideSitesWhereObservationMayBePerformed = segments.Length > 27 && segments[27].Length > 0 ? segments[27].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            AddressOfOutsideSites    = segments.Length > 28 && segments[28].Length > 0 ? segments[28].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedAddress>(x, false, seps)) : null;
            PhoneNumberOfOutsideSite = segments.Length > 29 && segments[29].Length > 0 ? TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(segments[29], false, seps) : null;
            ConfidentialityCode      = segments.Length > 30 && segments[30].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[30], false, seps) : null;
            ObservationsRequiredToInterpretThisObservation = segments.Length > 31 && segments[31].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[31], false, seps) : null;
            InterpretationOfObservations    = segments.Length > 32 && segments[32].Length > 0 ? TypeSerializer.Deserialize <Text>(segments[32], false, seps) : null;
            ContraindicationsToObservations = segments.Length > 33 && segments[33].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[33], false, seps) : null;
            ReflexTestsObservations         = segments.Length > 34 && segments[34].Length > 0 ? segments[34].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            RulesThatTriggerReflexTesting   = segments.Length > 35 && segments[35].Length > 0 ? TypeSerializer.Deserialize <Text>(segments[35], false, seps) : null;
            FixedCannedMessage  = segments.Length > 36 && segments[36].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[36], false, seps) : null;
            PatientPreparation  = segments.Length > 37 && segments[37].Length > 0 ? TypeSerializer.Deserialize <Text>(segments[37], false, seps) : null;
            ProcedureMedication = segments.Length > 38 && segments[38].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[38], false, seps) : null;
            FactorsThatMayAffectTheObservation        = segments.Length > 39 && segments[39].Length > 0 ? TypeSerializer.Deserialize <Text>(segments[39], false, seps) : null;
            ServiceTestObservationPerformanceSchedule = segments.Length > 40 && segments[40].Length > 0 ? segments[40].Split(seps.FieldRepeatSeparator, StringSplitOptions.None) : null;
            DescriptionOfTestMethods     = segments.Length > 41 && segments[41].Length > 0 ? TypeSerializer.Deserialize <Text>(segments[41], false, seps) : null;
            KindOfQuantityObserved       = segments.Length > 42 && segments[42].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[42], false, seps) : null;
            PointVersusInterval          = segments.Length > 43 && segments[43].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[43], false, seps) : null;
            ChallengeInformation         = segments.Length > 44 && segments[44].Length > 0 ? TypeSerializer.Deserialize <Text>(segments[44], false, seps) : null;
            RelationshipModifier         = segments.Length > 45 && segments[45].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[45], false, seps) : null;
            TargetAnatomicSiteOfTest     = segments.Length > 46 && segments[46].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[46], false, seps) : null;
            ModalityOfImagingMeasurement = segments.Length > 47 && segments[47].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[47], false, seps) : null;
        }
コード例 #15
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            InsuredsEmployeeId           = segments.Length > 1 && segments[1].Length > 0 ? segments[1].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdWithCheckDigit>(x, false, seps)) : null;
            InsuredsSocialSecurityNumber = segments.Length > 2 && segments[2].Length > 0 ? segments[2] : null;
            InsuredsEmployersNameAndId   = segments.Length > 3 && segments[3].Length > 0 ? segments[3].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(x, false, seps)) : null;
            EmployerInformationData      = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[4], false, seps) : null;
            MailClaimParty = segments.Length > 5 && segments[5].Length > 0 ? segments[5].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            MedicareHealthInsCardNumber  = segments.Length > 6 && segments[6].Length > 0 ? segments[6] : null;
            MedicaidCaseName             = segments.Length > 7 && segments[7].Length > 0 ? segments[7].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedPersonName>(x, false, seps)) : null;
            MedicaidCaseNumber           = segments.Length > 8 && segments[8].Length > 0 ? segments[8] : null;
            MilitarySponsorName          = segments.Length > 9 && segments[9].Length > 0 ? segments[9].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedPersonName>(x, false, seps)) : null;
            MilitaryIdNumber             = segments.Length > 10 && segments[10].Length > 0 ? segments[10] : null;
            DependentOfMilitaryRecipient = segments.Length > 11 && segments[11].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[11], false, seps) : null;
            MilitaryOrganization         = segments.Length > 12 && segments[12].Length > 0 ? segments[12] : null;
            MilitaryStation            = segments.Length > 13 && segments[13].Length > 0 ? segments[13] : null;
            MilitaryService            = segments.Length > 14 && segments[14].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[14], false, seps) : null;
            MilitaryRankGrade          = segments.Length > 15 && segments[15].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[15], false, seps) : null;
            MilitaryStatus             = segments.Length > 16 && segments[16].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[16], false, seps) : null;
            MilitaryRetireDate         = segments.Length > 17 && segments[17].Length > 0 ? segments[17].ToNullableDateTime() : null;
            MilitaryNonAvailCertOnFile = segments.Length > 18 && segments[18].Length > 0 ? segments[18] : null;
            BabyCoverage                 = segments.Length > 19 && segments[19].Length > 0 ? segments[19] : null;
            CombineBabyBill              = segments.Length > 20 && segments[20].Length > 0 ? segments[20] : null;
            BloodDeductible              = segments.Length > 21 && segments[21].Length > 0 ? segments[21] : null;
            SpecialCoverageApprovalName  = segments.Length > 22 && segments[22].Length > 0 ? segments[22].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedPersonName>(x, false, seps)) : null;
            SpecialCoverageApprovalTitle = segments.Length > 23 && segments[23].Length > 0 ? segments[23] : null;
            NonCoveredInsuranceCode      = segments.Length > 24 && segments[24].Length > 0 ? segments[24].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            PayorId                              = segments.Length > 25 && segments[25].Length > 0 ? segments[25].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdWithCheckDigit>(x, false, seps)) : null;
            PayorSubscriberId                    = segments.Length > 26 && segments[26].Length > 0 ? segments[26].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdWithCheckDigit>(x, false, seps)) : null;
            EligibilitySource                    = segments.Length > 27 && segments[27].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[27], false, seps) : null;
            RoomCoverageTypeAmount               = segments.Length > 28 && segments[28].Length > 0 ? segments[28].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <RoomCoverage>(x, false, seps)) : null;
            PolicyTypeAmount                     = segments.Length > 29 && segments[29].Length > 0 ? segments[29].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <PolicyTypeAndAmount>(x, false, seps)) : null;
            DailyDeductible                      = segments.Length > 30 && segments[30].Length > 0 ? TypeSerializer.Deserialize <DailyDeductibleInformation>(segments[30], false, seps) : null;
            LivingDependency                     = segments.Length > 31 && segments[31].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[31], false, seps) : null;
            AmbulatoryStatus                     = segments.Length > 32 && segments[32].Length > 0 ? segments[32].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            Citizenship                          = segments.Length > 33 && segments[33].Length > 0 ? segments[33].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            PrimaryLanguage                      = segments.Length > 34 && segments[34].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[34], false, seps) : null;
            LivingArrangement                    = segments.Length > 35 && segments[35].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[35], false, seps) : null;
            PublicityCode                        = segments.Length > 36 && segments[36].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[36], false, seps) : null;
            ProtectionIndicator                  = segments.Length > 37 && segments[37].Length > 0 ? segments[37] : null;
            StudentIndicator                     = segments.Length > 38 && segments[38].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[38], false, seps) : null;
            Religion                             = segments.Length > 39 && segments[39].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[39], false, seps) : null;
            MothersMaidenName                    = segments.Length > 40 && segments[40].Length > 0 ? segments[40].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedPersonName>(x, false, seps)) : null;
            Nationality                          = segments.Length > 41 && segments[41].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[41], false, seps) : null;
            EthnicGroup                          = segments.Length > 42 && segments[42].Length > 0 ? segments[42].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            MaritalStatus                        = segments.Length > 43 && segments[43].Length > 0 ? segments[43].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            InsuredsEmploymentStartDate          = segments.Length > 44 && segments[44].Length > 0 ? segments[44].ToNullableDateTime() : null;
            EmploymentStopDate                   = segments.Length > 45 && segments[45].Length > 0 ? segments[45].ToNullableDateTime() : null;
            JobTitle                             = segments.Length > 46 && segments[46].Length > 0 ? segments[46] : null;
            JobCodeClass                         = segments.Length > 47 && segments[47].Length > 0 ? TypeSerializer.Deserialize <JobCodeClass>(segments[47], false, seps) : null;
            JobStatus                            = segments.Length > 48 && segments[48].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[48], false, seps) : null;
            EmployerContactPersonName            = segments.Length > 49 && segments[49].Length > 0 ? segments[49].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedPersonName>(x, false, seps)) : null;
            EmployerContactPersonPhoneNumber     = segments.Length > 50 && segments[50].Length > 0 ? segments[50].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(x, false, seps)) : null;
            EmployerContactReason                = segments.Length > 51 && segments[51].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[51], false, seps) : null;
            InsuredsContactPersonsName           = segments.Length > 52 && segments[52].Length > 0 ? segments[52].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedPersonName>(x, false, seps)) : null;
            InsuredsContactPersonPhoneNumber     = segments.Length > 53 && segments[53].Length > 0 ? segments[53].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(x, false, seps)) : null;
            InsuredsContactPersonReason          = segments.Length > 54 && segments[54].Length > 0 ? segments[54].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            RelationshipToThePatientStartDate    = segments.Length > 55 && segments[55].Length > 0 ? segments[55].ToNullableDateTime() : null;
            RelationshipToThePatientStopDate     = segments.Length > 56 && segments[56].Length > 0 ? segments[56].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => x.ToDateTime()) : null;
            InsuranceCoContactReason             = segments.Length > 57 && segments[57].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[57], false, seps) : null;
            InsuranceCoContactPhoneNumber        = segments.Length > 58 && segments[58].Length > 0 ? segments[58].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(x, false, seps)) : null;
            PolicyScope                          = segments.Length > 59 && segments[59].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[59], false, seps) : null;
            PolicySource                         = segments.Length > 60 && segments[60].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[60], false, seps) : null;
            PatientMemberNumber                  = segments.Length > 61 && segments[61].Length > 0 ? TypeSerializer.Deserialize <ExtendedCompositeIdWithCheckDigit>(segments[61], false, seps) : null;
            GuarantorsRelationshipToInsured      = segments.Length > 62 && segments[62].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[62], false, seps) : null;
            InsuredsPhoneNumberHome              = segments.Length > 63 && segments[63].Length > 0 ? segments[63].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(x, false, seps)) : null;
            InsuredsEmployerPhoneNumber          = segments.Length > 64 && segments[64].Length > 0 ? segments[64].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(x, false, seps)) : null;
            MilitaryHandicappedProgram           = segments.Length > 65 && segments[65].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[65], false, seps) : null;
            SuspendFlag                          = segments.Length > 66 && segments[66].Length > 0 ? segments[66] : null;
            CopayLimitFlag                       = segments.Length > 67 && segments[67].Length > 0 ? segments[67] : null;
            StoplossLimitFlag                    = segments.Length > 68 && segments[68].Length > 0 ? segments[68] : null;
            InsuredOrganizationNameAndId         = segments.Length > 69 && segments[69].Length > 0 ? segments[69].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeNameAndIdNumberForOrganizations>(x, false, seps)) : null;
            InsuredEmployerOrganizationNameAndId = segments.Length > 70 && segments[70].Length > 0 ? segments[70].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeNameAndIdNumberForOrganizations>(x, false, seps)) : null;
            Race = segments.Length > 71 && segments[71].Length > 0 ? segments[71].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            PatientsRelationshipToInsured = segments.Length > 72 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[72], false, seps) : null;
        }
コード例 #16
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            ExternalAccessionIdentifier      = segments.Length > 1 && segments[1].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[1], false, seps) : null;
            AccessionIdentifier              = segments.Length > 2 && segments[2].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[2], false, seps) : null;
            ContainerIdentifier              = segments.Length > 3 && segments[3].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[3], false, seps) : null;
            PrimaryParentContainerIdentifier = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[4], false, seps) : null;
            EquipmentContainerIdentifier     = segments.Length > 5 && segments[5].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[5], false, seps) : null;
            SpecimenSource       = segments.Length > 6 && segments[6].Length > 0 ? segments[6] : null;
            RegistrationDateTime = segments.Length > 7 && segments[7].Length > 0 ? segments[7].ToNullableDateTime() : null;
            ContainerStatus      = segments.Length > 8 && segments[8].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[8], false, seps) : null;
            CarrierType          = segments.Length > 9 && segments[9].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[9], false, seps) : null;
            CarrierIdentifier    = segments.Length > 10 && segments[10].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[10], false, seps) : null;
            PositionInCarrier    = segments.Length > 11 && segments[11].Length > 0 ? TypeSerializer.Deserialize <NumericArray>(segments[11], false, seps) : null;
            TrayTypeSac          = segments.Length > 12 && segments[12].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[12], false, seps) : null;
            TrayIdentifier       = segments.Length > 13 && segments[13].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[13], false, seps) : null;
            PositionInTray       = segments.Length > 14 && segments[14].Length > 0 ? TypeSerializer.Deserialize <NumericArray>(segments[14], false, seps) : null;
            Location             = segments.Length > 15 && segments[15].Length > 0 ? segments[15].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            ContainerHeight      = segments.Length > 16 && segments[16].Length > 0 ? segments[16].ToNullableDecimal() : null;
            ContainerDiameter    = segments.Length > 17 && segments[17].Length > 0 ? segments[17].ToNullableDecimal() : null;
            BarrierDelta         = segments.Length > 18 && segments[18].Length > 0 ? segments[18].ToNullableDecimal() : null;
            BottomDelta          = segments.Length > 19 && segments[19].Length > 0 ? segments[19].ToNullableDecimal() : null;
            ContainerHeightDiameterDeltaUnits = segments.Length > 20 && segments[20].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[20], false, seps) : null;
            ContainerVolume         = segments.Length > 21 && segments[21].Length > 0 ? segments[21].ToNullableDecimal() : null;
            AvailableSpecimenVolume = segments.Length > 22 && segments[22].Length > 0 ? segments[22].ToNullableDecimal() : null;
            InitialSpecimenVolume   = segments.Length > 23 && segments[23].Length > 0 ? segments[23].ToNullableDecimal() : null;
            VolumeUnits             = segments.Length > 24 && segments[24].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[24], false, seps) : null;
            SeparatorType           = segments.Length > 25 && segments[25].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[25], false, seps) : null;
            CapType                   = segments.Length > 26 && segments[26].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[26], false, seps) : null;
            Additive                  = segments.Length > 27 && segments[27].Length > 0 ? segments[27].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            SpecimenComponent         = segments.Length > 28 && segments[28].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[28], false, seps) : null;
            DilutionFactor            = segments.Length > 29 && segments[29].Length > 0 ? TypeSerializer.Deserialize <StructuredNumeric>(segments[29], false, seps) : null;
            Treatment                 = segments.Length > 30 && segments[30].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[30], false, seps) : null;
            Temperature               = segments.Length > 31 && segments[31].Length > 0 ? TypeSerializer.Deserialize <StructuredNumeric>(segments[31], false, seps) : null;
            HemolysisIndex            = segments.Length > 32 && segments[32].Length > 0 ? segments[32].ToNullableDecimal() : null;
            HemolysisIndexUnits       = segments.Length > 33 && segments[33].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[33], false, seps) : null;
            LipemiaIndex              = segments.Length > 34 && segments[34].Length > 0 ? segments[34].ToNullableDecimal() : null;
            LipemiaIndexUnits         = segments.Length > 35 && segments[35].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[35], false, seps) : null;
            IcterusIndex              = segments.Length > 36 && segments[36].Length > 0 ? segments[36].ToNullableDecimal() : null;
            IcterusIndexUnits         = segments.Length > 37 && segments[37].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[37], false, seps) : null;
            FibrinIndex               = segments.Length > 38 && segments[38].Length > 0 ? segments[38].ToNullableDecimal() : null;
            FibrinIndexUnits          = segments.Length > 39 && segments[39].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[39], false, seps) : null;
            SystemInducedContaminants = segments.Length > 40 && segments[40].Length > 0 ? segments[40].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            DrugInterference          = segments.Length > 41 && segments[41].Length > 0 ? segments[41].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            ArtificialBlood           = segments.Length > 42 && segments[42].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[42], false, seps) : null;
            SpecialHandlingCode       = segments.Length > 43 && segments[43].Length > 0 ? segments[43].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            OtherEnvironmentalFactors = segments.Length > 44 && segments[44].Length > 0 ? segments[44].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            ContainerLength           = segments.Length > 45 && segments[45].Length > 0 ? TypeSerializer.Deserialize <CompositeQuantityWithUnits>(segments[45], false, seps) : null;
            ContainerWidth            = segments.Length > 46 && segments[46].Length > 0 ? TypeSerializer.Deserialize <CompositeQuantityWithUnits>(segments[46], false, seps) : null;
            ContainerForm             = segments.Length > 47 && segments[47].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[47], false, seps) : null;
            ContainerMaterial         = segments.Length > 48 && segments[48].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[48], false, seps) : null;
            ContainerCommonName       = segments.Length > 49 && segments[49].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[49], false, seps) : null;
        }
コード例 #17
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            SetIdObr                                   = segments.Length > 1 && segments[1].Length > 0 ? segments[1].ToNullableUInt() : null;
            PlacerOrderNumber                          = segments.Length > 2 && segments[2].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[2], false, seps) : null;
            FillerOrderNumber                          = segments.Length > 3 && segments[3].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[3], false, seps) : null;
            UniversalServiceIdentifier                 = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <CodedElement>(segments[4], false, seps) : null;
            Priority                                   = segments.Length > 5 && segments[5].Length > 0 ? segments[5] : null;
            RequestedDateTime                          = segments.Length > 6 && segments[6].Length > 0 ? segments[6].ToNullableDateTime() : null;
            ObservationDateTime                        = segments.Length > 7 && segments[7].Length > 0 ? segments[7].ToNullableDateTime() : null;
            ObservationEndDateTime                     = segments.Length > 8 && segments[8].Length > 0 ? segments[8].ToNullableDateTime() : null;
            CollectionVolume                           = segments.Length > 9 && segments[9].Length > 0 ? TypeSerializer.Deserialize <CompositeQuantityWithUnits>(segments[9], false, seps) : null;
            CollectorIdentifier                        = segments.Length > 10 && segments[10].Length > 0 ? segments[10].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(x, false, seps)) : null;
            SpecimenActionCode                         = segments.Length > 11 && segments[11].Length > 0 ? segments[11] : null;
            DangerCode                                 = segments.Length > 12 && segments[12].Length > 0 ? TypeSerializer.Deserialize <CodedElement>(segments[12], false, seps) : null;
            RelevantClinicalInformation                = segments.Length > 13 && segments[13].Length > 0 ? segments[13] : null;
            SpecimenReceivedDateTime                   = segments.Length > 14 && segments[14].Length > 0 ? segments[14].ToNullableDateTime() : null;
            SpecimenSource                             = segments.Length > 15 && segments[15].Length > 0 ? TypeSerializer.Deserialize <SpecimenSource>(segments[15], false, seps) : null;
            OrderingProvider                           = segments.Length > 16 && segments[16].Length > 0 ? segments[16].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(x, false, seps)) : null;
            OrderCallbackPhoneNumber                   = segments.Length > 17 && segments[17].Length > 0 ? segments[17].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedTelecommunicationNumber>(x, false, seps)) : null;
            PlacerField1                               = segments.Length > 18 && segments[18].Length > 0 ? segments[18] : null;
            PlacerField2                               = segments.Length > 19 && segments[19].Length > 0 ? segments[19] : null;
            FillerField1                               = segments.Length > 20 && segments[20].Length > 0 ? segments[20] : null;
            FillerField2                               = segments.Length > 21 && segments[21].Length > 0 ? segments[21] : null;
            ResultsRptStatusChngDateTime               = segments.Length > 22 && segments[22].Length > 0 ? segments[22].ToNullableDateTime() : null;
            ChargeToPractice                           = segments.Length > 23 && segments[23].Length > 0 ? TypeSerializer.Deserialize <MoneyAndChargeCode>(segments[23], false, seps) : null;
            DiagnosticServSectId                       = segments.Length > 24 && segments[24].Length > 0 ? segments[24] : null;
            ResultStatus                               = segments.Length > 25 && segments[25].Length > 0 ? segments[25] : null;
            ParentResult                               = segments.Length > 26 && segments[26].Length > 0 ? TypeSerializer.Deserialize <ParentResultLink>(segments[26], false, seps) : null;
            QuantityTiming                             = segments.Length > 27 && segments[27].Length > 0 ? segments[27].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <TimingQuantity>(x, false, seps)) : null;
            ResultCopiesTo                             = segments.Length > 28 && segments[28].Length > 0 ? segments[28].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(x, false, seps)) : null;
            ParentResultsObservationIdentifier         = segments.Length > 29 && segments[29].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifierPair>(segments[29], false, seps) : null;
            TransportationMode                         = segments.Length > 30 && segments[30].Length > 0 ? segments[30] : null;
            ReasonForStudy                             = segments.Length > 31 && segments[31].Length > 0 ? segments[31].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedElement>(x, false, seps)) : null;
            PrincipalResultInterpreter                 = segments.Length > 32 && segments[32].Length > 0 ? TypeSerializer.Deserialize <NameWithDateAndLocation>(segments[32], false, seps) : null;
            AssistantResultInterpreter                 = segments.Length > 33 && segments[33].Length > 0 ? segments[33].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <NameWithDateAndLocation>(x, false, seps)) : null;
            Technician                                 = segments.Length > 34 && segments[34].Length > 0 ? segments[34].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <NameWithDateAndLocation>(x, false, seps)) : null;
            Transcriptionist                           = segments.Length > 35 && segments[35].Length > 0 ? segments[35].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <NameWithDateAndLocation>(x, false, seps)) : null;
            ScheduledDateTime                          = segments.Length > 36 && segments[36].Length > 0 ? segments[36].ToNullableDateTime() : null;
            NumberOfSampleContainers                   = segments.Length > 37 && segments[37].Length > 0 ? segments[37].ToNullableDecimal() : null;
            TransportLogisticsOfCollectedSample        = segments.Length > 38 && segments[38].Length > 0 ? segments[38].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedElement>(x, false, seps)) : null;
            CollectorsComment                          = segments.Length > 39 && segments[39].Length > 0 ? segments[39].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedElement>(x, false, seps)) : null;
            TransportArrangementResponsibility         = segments.Length > 40 && segments[40].Length > 0 ? TypeSerializer.Deserialize <CodedElement>(segments[40], false, seps) : null;
            TransportArranged                          = segments.Length > 41 && segments[41].Length > 0 ? segments[41] : null;
            EscortRequired                             = segments.Length > 42 && segments[42].Length > 0 ? segments[42] : null;
            PlannedPatientTransportComment             = segments.Length > 43 && segments[43].Length > 0 ? segments[43].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedElement>(x, false, seps)) : null;
            ProcedureCode                              = segments.Length > 44 && segments[44].Length > 0 ? TypeSerializer.Deserialize <CodedElement>(segments[44], false, seps) : null;
            ProcedureCodeModifier                      = segments.Length > 45 && segments[45].Length > 0 ? segments[45].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedElement>(x, false, seps)) : null;
            PlacerSupplementalServiceInformation       = segments.Length > 46 && segments[46].Length > 0 ? segments[46].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedElement>(x, false, seps)) : null;
            FillerSupplementalServiceInformation       = segments.Length > 47 && segments[47].Length > 0 ? segments[47].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedElement>(x, false, seps)) : null;
            MedicallyNecessaryDuplicateProcedureReason = segments.Length > 48 && segments[48].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[48], false, seps) : null;
            ResultHandling                             = segments.Length > 49 && segments[49].Length > 0 ? segments[49] : null;
            ParentUniversalServiceIdentifier           = segments.Length > 50 && segments[50].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[50], false, seps) : null;
        }
コード例 #18
0
        /// <inheritdoc/>
        public void FromDelimitedString(string delimitedString, Separators separators)
        {
            Separators seps = separators ?? new Separators().UsingConfigurationValues();

            string[] segments = delimitedString == null
                ? Array.Empty <string>()
                : delimitedString.Split(seps.FieldSeparator, StringSplitOptions.None);

            if (segments.Length > 0)
            {
                if (string.Compare(Id, segments[0], true, CultureInfo.CurrentCulture) != 0)
                {
                    throw new ArgumentException($"{ nameof(delimitedString) } does not begin with the proper segment Id: '{ Id }{ seps.FieldSeparator }'.", nameof(delimitedString));
                }
            }

            SetIdFt1                      = segments.Length > 1 && segments[1].Length > 0 ? segments[1].ToNullableUInt() : null;
            TransactionId                 = segments.Length > 2 && segments[2].Length > 0 ? TypeSerializer.Deserialize <ExtendedCompositeIdWithCheckDigit>(segments[2], false, seps) : null;
            TransactionBatchId            = segments.Length > 3 && segments[3].Length > 0 ? segments[3] : null;
            TransactionDate               = segments.Length > 4 && segments[4].Length > 0 ? TypeSerializer.Deserialize <DateTimeRange>(segments[4], false, seps) : null;
            TransactionPostingDate        = segments.Length > 5 && segments[5].Length > 0 ? segments[5].ToNullableDateTime() : null;
            TransactionType               = segments.Length > 6 && segments[6].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[6], false, seps) : null;
            TransactionCode               = segments.Length > 7 && segments[7].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[7], false, seps) : null;
            TransactionDescription        = segments.Length > 8 && segments[8].Length > 0 ? segments[8] : null;
            TransactionDescriptionAlt     = segments.Length > 9 && segments[9].Length > 0 ? segments[9] : null;
            TransactionQuantity           = segments.Length > 10 && segments[10].Length > 0 ? segments[10].ToNullableDecimal() : null;
            TransactionAmountExtended     = segments.Length > 11 && segments[11].Length > 0 ? TypeSerializer.Deserialize <CompositePrice>(segments[11], false, seps) : null;
            TransactionAmountUnit         = segments.Length > 12 && segments[12].Length > 0 ? TypeSerializer.Deserialize <CompositePrice>(segments[12], false, seps) : null;
            DepartmentCode                = segments.Length > 13 && segments[13].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[13], false, seps) : null;
            HealthPlanId                  = segments.Length > 14 && segments[14].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[14], false, seps) : null;
            InsuranceAmount               = segments.Length > 15 && segments[15].Length > 0 ? TypeSerializer.Deserialize <CompositePrice>(segments[15], false, seps) : null;
            AssignedPatientLocation       = segments.Length > 16 && segments[16].Length > 0 ? TypeSerializer.Deserialize <PersonLocation>(segments[16], false, seps) : null;
            FeeSchedule                   = segments.Length > 17 && segments[17].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[17], false, seps) : null;
            PatientType                   = segments.Length > 18 && segments[18].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[18], false, seps) : null;
            DiagnosisCodeFt1              = segments.Length > 19 && segments[19].Length > 0 ? segments[19].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            PerformedByCode               = segments.Length > 20 && segments[20].Length > 0 ? segments[20].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(x, false, seps)) : null;
            OrderedByCode                 = segments.Length > 21 && segments[21].Length > 0 ? segments[21].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(x, false, seps)) : null;
            UnitCost                      = segments.Length > 22 && segments[22].Length > 0 ? TypeSerializer.Deserialize <CompositePrice>(segments[22], false, seps) : null;
            FillerOrderNumber             = segments.Length > 23 && segments[23].Length > 0 ? TypeSerializer.Deserialize <EntityIdentifier>(segments[23], false, seps) : null;
            EnteredByCode                 = segments.Length > 24 && segments[24].Length > 0 ? segments[24].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeIdNumberAndNameForPersons>(x, false, seps)) : null;
            ProcedureCode                 = segments.Length > 25 && segments[25].Length > 0 ? TypeSerializer.Deserialize <CodedWithNoExceptions>(segments[25], false, seps) : null;
            ProcedureCodeModifier         = segments.Length > 26 && segments[26].Length > 0 ? segments[26].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithNoExceptions>(x, false, seps)) : null;
            AdvancedBeneficiaryNoticeCode = segments.Length > 27 && segments[27].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[27], false, seps) : null;
            MedicallyNecessaryDuplicateProcedureReason = segments.Length > 28 && segments[28].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[28], false, seps) : null;
            NdcCode                     = segments.Length > 29 && segments[29].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[29], false, seps) : null;
            PaymentReferenceId          = segments.Length > 30 && segments[30].Length > 0 ? TypeSerializer.Deserialize <ExtendedCompositeIdWithCheckDigit>(segments[30], false, seps) : null;
            TransactionReferenceKey     = segments.Length > 31 && segments[31].Length > 0 ? segments[31].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => x.ToUInt()) : null;
            PerformingFacility          = segments.Length > 32 && segments[32].Length > 0 ? segments[32].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <ExtendedCompositeNameAndIdNumberForOrganizations>(x, false, seps)) : null;
            OrderingFacility            = segments.Length > 33 && segments[33].Length > 0 ? TypeSerializer.Deserialize <ExtendedCompositeNameAndIdNumberForOrganizations>(segments[33], false, seps) : null;
            ItemNumber                  = segments.Length > 34 && segments[34].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[34], false, seps) : null;
            ModelNumber                 = segments.Length > 35 && segments[35].Length > 0 ? segments[35] : null;
            SpecialProcessingCode       = segments.Length > 36 && segments[36].Length > 0 ? segments[36].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            ClinicCode                  = segments.Length > 37 && segments[37].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[37], false, seps) : null;
            ReferralNumber              = segments.Length > 38 && segments[38].Length > 0 ? TypeSerializer.Deserialize <ExtendedCompositeIdWithCheckDigit>(segments[38], false, seps) : null;
            AuthorizationNumber         = segments.Length > 39 && segments[39].Length > 0 ? TypeSerializer.Deserialize <ExtendedCompositeIdWithCheckDigit>(segments[39], false, seps) : null;
            ServiceProviderTaxonomyCode = segments.Length > 40 && segments[40].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[40], false, seps) : null;
            RevenueCode                 = segments.Length > 41 && segments[41].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[41], false, seps) : null;
            PrescriptionNumber          = segments.Length > 42 && segments[42].Length > 0 ? segments[42] : null;
            NdcQtyAndUom                = segments.Length > 43 && segments[43].Length > 0 ? TypeSerializer.Deserialize <CompositeQuantityWithUnits>(segments[43], false, seps) : null;
            DmeCertificateOfMedicalNecessityTransmissionCode = segments.Length > 44 && segments[44].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[44], false, seps) : null;
            DmeCertificationTypeCode        = segments.Length > 45 && segments[45].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[45], false, seps) : null;
            DmeDurationValue                = segments.Length > 46 && segments[46].Length > 0 ? segments[46].ToNullableDecimal() : null;
            DmeCertificationRevisionDate    = segments.Length > 47 && segments[47].Length > 0 ? segments[47].ToNullableDateTime() : null;
            DmeInitialCertificationDate     = segments.Length > 48 && segments[48].Length > 0 ? segments[48].ToNullableDateTime() : null;
            DmeLastCertificationDate        = segments.Length > 49 && segments[49].Length > 0 ? segments[49].ToNullableDateTime() : null;
            DmeLengthOfMedicalNecessityDays = segments.Length > 50 && segments[50].Length > 0 ? segments[50].ToNullableDecimal() : null;
            DmeRentalPrice   = segments.Length > 51 && segments[51].Length > 0 ? TypeSerializer.Deserialize <Money>(segments[51], false, seps) : null;
            DmePurchasePrice = segments.Length > 52 && segments[52].Length > 0 ? TypeSerializer.Deserialize <Money>(segments[52], false, seps) : null;
            DmeFrequencyCode = segments.Length > 53 && segments[53].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[53], false, seps) : null;
            DmeCertificationConditionIndicator = segments.Length > 54 && segments[54].Length > 0 ? segments[54] : null;
            DmeConditionIndicatorCode          = segments.Length > 55 && segments[55].Length > 0 ? segments[55].Split(seps.FieldRepeatSeparator, StringSplitOptions.None).Select(x => TypeSerializer.Deserialize <CodedWithExceptions>(x, false, seps)) : null;
            ServiceReasonCode = segments.Length > 56 && segments[56].Length > 0 ? TypeSerializer.Deserialize <CodedWithExceptions>(segments[56], false, seps) : null;
        }