cdac.medinfo.sdk.hl7282.baselibs.segments

## Class IPR

- java.lang.Object
- - cdac.medinfo.sdk.hl7282.baselibs.segments.Segment
  - - cdac.medinfo.sdk.hl7282.baselibs.segments.IPR

- All Implemented Interfaces:
    ISegment

      public class IPR
      extends Segment

  IPR - Invoice Processing Results Segment The Invoice Processing Results (IPR) segment provides summary information about an adjudicated Product/Service Group or Product/Service Line Item

  Represents an HL7 IPR message segment. This segment has the following fields:

  IPR-1 : IPR Identifier (EI)Required
  IPR-2 : Provider Cross Reference Identifier (EI)Required
  IPR-3 : Payer Cross Reference Identifier (EI)Required
  IPR-4 : IPR Status (CWE)Required
  IPR-5 : IPR Date/Time (DTM)Required
  IPR-6 : Adjudicated/Paid Amount (CP)Optional
  IPR-7 : Expected Payment Date/Time (DTM)Optional
  IPR-8 : IPR Checksum (ST)Required
  This class provides mechanism to validate message against HL7 v 2.8.2 standard. The class provides accessors & mutators for the elements mentioned above. The class has validate method which validates Message against HL7 v 2.8.2 standard.

  User can also create Segment through `SegmentFactory`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `IPR()` Constructs the IPR segment.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `CP` | `getAdjudicatedOrPaidAmount()` Retrieve Adjudicated/Paid Amount (CP) This field is about Adjudicated Amount for the Product/Service Group or Product/Service Line Item, which could be 0 = sum of all Payer adjustments (Adjustment Amount on ADJ).
    `DTM` | `getExpectedPaymentDateOrTime()` Retrieve Expected Payment Date/Time (DTM) This field is about Date payment is expected for this IPR.
    `ST` | `getIPRChecksum()` Retrieve IPR Checksum (ST) This field is about Conditional, if Status = "Accepted", then Required, else Not Permitted.
    `DTM` | `getIPRDateOrTime()` Retrieve IPR Date/Time (DTM) This field is about Date/Time IPR was created.
    `EI` | `getIPRIdentifier()` Retrieve IPR Identifier (EI) This field is Unique IPR Number assigned by the Payer Application.
    `CWE` | `getIPRStatus()` retrieve IPR Status (CWE) This field is about Processing status for the Product/Service Group (if Adjudicate as Group = "Y") or Product/Service Line Item.
    `EI` | `getPayerCrossReferenceIdentifier()` Retrieve Payer Cross Reference Identifier (EI) This field is Cross reference to Payer Product/Service Group Number or Payer Product/Service Line Item Number from original Invoice.
    `EI` | `getProviderCrossReferenceIdentifier()` Retrieve Provider Cross Reference Identifier (EI) This field is Cross reference to Provider Product/Service Group Number or Provider Product/Service Line Item Number from original Invoice.
    `void` | `setAdjudicatedOrPaidAmount(CP objAdjudicatedOrPaidAmount)` Set Adjudicated/Paid Amount (CP) This field is about Adjudicated Amount for the Product/Service Group or Product/Service Line Item, which could be 0 = sum of all Payer adjustments (Adjustment Amount on ADJ).
    `void` | `setAdjudicatedOrPaidAmount(MO objPrice, java.lang.String strPriceType, java.lang.String strFormValue, java.lang.String strToValue, CWE objRangeUnits, java.lang.String strRangeType)` Set Adjudicated/Paid Amount (CP) This field is about Adjudicated Amount for the Product/Service Group or Product/Service Line Item, which could be 0 = sum of all Payer adjustments (Adjustment Amount on ADJ).
    `void` | `setExpectedPaymentDateOrTime(DTM objExpectedPaymentDateOrTime)` Set Expected Payment Date/Time (DTM) This field is about Date payment is expected for this IPR.
    `void` | `setExpectedPaymentDateOrTime(java.lang.String strExpectedPaymentDateOrTime)` Set Expected Payment Date/Time (DTM) This field is about Date payment is expected for this IPR.
    `void` | `setIPRChecksum(ST objIPRChecksum)` Retrieve IPR Checksum (ST) This field is about Conditional, if Status = "Accepted", then Required, else Not Permitted.
    `void` | `setIPRChecksum(java.lang.String strIPRChecksum)` Retrieve IPR Checksum (ST) This field is about Conditional, if Status = "Accepted", then Required, else Not Permitted.
    `void` | `setIPRDateOrTime(DTM objIPRDateOrTime)` Set IPR Date/Time (DTM) This field is about Date/Time IPR was created.
    `void` | `setIPRDateOrTime(java.lang.String strIPRDateOrTime)` Set IPR Date/Time (DTM) This field is about Date/Time IPR was created.
    `void` | `setIPRIdentifier(EI objIPRIdentifier)` Set Retrieve IPR Identifier (EI) This field is Unique IPR Number assigned by the Payer Application.
    `void` | `setIPRIdentifier(java.lang.String strEntityIdentifier, java.lang.String strNamespaceID, java.lang.String strUniversalID, java.lang.String strUniversalIDType)` Set Retrieve IPR Identifier (EI) This field is Unique IPR Number assigned by the Payer Application.
    `void` | `setIPRStatus(CWE objIPRStatus)` Set IPR Status (CWE) This field is about Processing status for the Product/Service Group (if Adjudicate as Group = "Y") or Product/Service Line Item.
    `void` | `setIPRStatus(java.lang.String strIdentifier, java.lang.String strText, java.lang.String strNameOfCodingSystem, java.lang.String strAlternateIdentifier, java.lang.String strAlternateText, java.lang.String strNameOfAlternateCodingSystem, java.lang.String strCodingSystemVersionID, java.lang.String strAlternateCodingSystemVersionId, java.lang.String strOriginalText, java.lang.String strSecondAlternateIdentifier, java.lang.String strSecondAlternateText, java.lang.String strNameofSecondAlternateCodingSystem, java.lang.String strSecondAlternateCodingSystemVersionID, java.lang.String strCodingSystemOID, java.lang.String strValueSetOID, java.lang.String strValueSetVersionID, java.lang.String strAlternateCodingSystemOID, java.lang.String strAlternateValueSetOID, java.lang.String strAlternateValueSetVersionID, java.lang.String strSecondAlternateCodingSystemOID, java.lang.String strSecondAlternateValueSetOID, java.lang.String strSecondAlternateValueSetVersionID)` Set IPR Status (CWE) This field is about Processing status for the Product/Service Group (if Adjudicate as Group = "Y") or Product/Service Line Item.
    `void` | `setPayerCrossReferenceIdentifier(EI objPayerCrossReferenceIdentifier)` Set Retrieve Payer Cross Reference Identifier (EI) This field is Cross reference to Payer Product/Service Group Number or Payer Product/Service Line Item Number from original Invoice.
    `void` | `setPayerCrossReferenceIdentifier(java.lang.String strEntityIdentifier, java.lang.String strNamespaceID, java.lang.String strUniversalID, java.lang.String strUniversalIDType)` Set Retrieve Payer Cross Reference Identifier (EI) This field is Cross reference to Payer Product/Service Group Number or Payer Product/Service Line Item Number from original Invoice.
    `void` | `setProviderCrossReferenceIdentifier(EI objProviderCrossReferenceIdentifier)` Set Retrieve Provider Cross Reference Identifier (EI) This field is Cross reference to Provider Product/Service Group Number or Provider Product/Service Line Item Number from original Invoice.
    `void` | `setProviderCrossReferenceIdentifier(java.lang.String strEntityIdentifier, java.lang.String strNamespaceID, java.lang.String strUniversalID, java.lang.String strUniversalIDType)` Set Retrieve Provider Cross Reference Identifier (EI) This field is Cross reference to Provider Product/Service Group Number or Provider Product/Service Line Item Number from original Invoice.
    `boolean` | `validate()` Validates HL7 Message objects .

    - ### Methods inherited from class cdac.medinfo.sdk.hl7282.baselibs.segments.Segment

      `addUnRecognizedField, dumpSegment, getFields, getName, getUnrecognizedFields, moveToNextSegment, parse, removeDataElement, removeDataElement, serialize, setName, setUnRecognizedField, updateDataElement, updateDataElement, writeToXML`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### IPR

          public IPR()

      Constructs the IPR segment.

  - ### Method Detail

    - #### getIPRIdentifier

          public EI getIPRIdentifier()

      Retrieve IPR Identifier (EI) This field is Unique IPR Number assigned by the Payer Application.
      Returns:
        EI - object of IPR Identifier.

    - #### setIPRIdentifier

          public void setIPRIdentifier(java.lang.String strEntityIdentifier,
                              java.lang.String strNamespaceID,
                              java.lang.String strUniversalID,
                              java.lang.String strUniversalIDType)

      Set Retrieve IPR Identifier (EI) This field is Unique IPR Number assigned by the Payer Application.
      Parameters:
        `strEntityIdentifier` - - string of character use to identify the entity.
        `strNamespaceID` - - Use to identify the name space id..
        `strUniversalID` - - Use to identify the name space identity.
        `strUniversalIDType` - - String of characters describe Universal Id Type.

    - #### setIPRIdentifier

          public void setIPRIdentifier(EI objIPRIdentifier)

      Set Retrieve IPR Identifier (EI) This field is Unique IPR Number assigned by the Payer Application.
      Parameters:
        `objIPRIdentifier` - - object of IPR Identifier.

    - #### getProviderCrossReferenceIdentifier

          public EI getProviderCrossReferenceIdentifier()

      Retrieve Provider Cross Reference Identifier (EI) This field is Cross reference to Provider Product/Service Group Number or Provider Product/Service Line Item Number from original Invoice.
      Returns:
        EI - object of Provider Cross Reference Identifier.

    - #### setProviderCrossReferenceIdentifier

          public void setProviderCrossReferenceIdentifier(java.lang.String strEntityIdentifier,
                                                 java.lang.String strNamespaceID,
                                                 java.lang.String strUniversalID,
                                                 java.lang.String strUniversalIDType)

      Set Retrieve Provider Cross Reference Identifier (EI) This field is Cross reference to Provider Product/Service Group Number or Provider Product/Service Line Item Number from original Invoice.
      Parameters:
        `strEntityIdentifier` - - string of character use to identify the entity.
        `strNamespaceID` - - Use to identify the name space id..
        `strUniversalID` - - Use to identify the name space identity.
        `strUniversalIDType` - - String of characters describe Universal Id Type.

    - #### setProviderCrossReferenceIdentifier

          public void setProviderCrossReferenceIdentifier(EI objProviderCrossReferenceIdentifier)

      Set Retrieve Provider Cross Reference Identifier (EI) This field is Cross reference to Provider Product/Service Group Number or Provider Product/Service Line Item Number from original Invoice.
      Parameters:
        `objProviderCrossReferenceIdentifier` - - object of Provider Cross Reference Identifier.

    - #### getPayerCrossReferenceIdentifier

          public EI getPayerCrossReferenceIdentifier()

      Retrieve Payer Cross Reference Identifier (EI) This field is Cross reference to Payer Product/Service Group Number or Payer Product/Service Line Item Number from original Invoice.
      Returns:
        EI - object of Payer Cross Reference Identifier.

    - #### setPayerCrossReferenceIdentifier

          public void setPayerCrossReferenceIdentifier(java.lang.String strEntityIdentifier,
                                              java.lang.String strNamespaceID,
                                              java.lang.String strUniversalID,
                                              java.lang.String strUniversalIDType)

      Set Retrieve Payer Cross Reference Identifier (EI) This field is Cross reference to Payer Product/Service Group Number or Payer Product/Service Line Item Number from original Invoice.
      Parameters:
        `strEntityIdentifier` - - string of character use to identify the entity.
        `strNamespaceID` - - Use to identify the name space id..
        `strUniversalID` - - Use to identify the name space identity.
        `strUniversalIDType` - - String of characters describe Universal Id Type.

    - #### setPayerCrossReferenceIdentifier

          public void setPayerCrossReferenceIdentifier(EI objPayerCrossReferenceIdentifier)

      Set Retrieve Payer Cross Reference Identifier (EI) This field is Cross reference to Payer Product/Service Group Number or Payer Product/Service Line Item Number from original Invoice.
      Parameters:
        `objPayerCrossReferenceIdentifier` - - object of Payer Cross Reference Identifier.

    - #### getIPRStatus

          public CWE getIPRStatus()

      retrieve IPR Status (CWE) This field is about Processing status for the Product/Service Group (if Adjudicate as Group = "Y") or Product/Service Line Item.
      Returns:
        CWE - object of IPR Status.

    - #### setIPRStatus

          public void setIPRStatus(java.lang.String strIdentifier,
                          java.lang.String strText,
                          java.lang.String strNameOfCodingSystem,
                          java.lang.String strAlternateIdentifier,
                          java.lang.String strAlternateText,
                          java.lang.String strNameOfAlternateCodingSystem,
                          java.lang.String strCodingSystemVersionID,
                          java.lang.String strAlternateCodingSystemVersionId,
                          java.lang.String strOriginalText,
                          java.lang.String strSecondAlternateIdentifier,
                          java.lang.String strSecondAlternateText,
                          java.lang.String strNameofSecondAlternateCodingSystem,
                          java.lang.String strSecondAlternateCodingSystemVersionID,
                          java.lang.String strCodingSystemOID,
                          java.lang.String strValueSetOID,
                          java.lang.String strValueSetVersionID,
                          java.lang.String strAlternateCodingSystemOID,
                          java.lang.String strAlternateValueSetOID,
                          java.lang.String strAlternateValueSetVersionID,
                          java.lang.String strSecondAlternateCodingSystemOID,
                          java.lang.String strSecondAlternateValueSetOID,
                          java.lang.String strSecondAlternateValueSetVersionID)

      Set IPR Status (CWE) This field is about Processing status for the Product/Service Group (if Adjudicate as Group = "Y") or Product/Service Line Item.
      Parameters:
        `strIdentifier` - Specifies of characters (the code) that uniquely identifies the item being referenced.
        `strText` - Specifies The descriptive or textual name of the identifier, e.g., myocardial infection.
        `strNameOfCodingSystem` - Identifies the coding scheme being used in the identifier component.
        `strAlternateIdentifier` - Specifies an alternate sequence of characters (the code) that uniquely identifies the item being referenced.
        `strAlternateText` - Specifies the descriptive or textual name of the alternate identifier. See usage note in section introduction.
        `strNameOfAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strCodingSystemVersionID` - A sequence of characters that uniquely identifies a second alternate code.
        `strAlternateCodingSystemVersionId` - This component carries the version for the coding system identified by components 4-6.
        `strOriginalText` - The text as seen and/or selected by the user who entered the data.
        `strSecondAlternateIdentifier` - A sequence of characters that uniquely identifies a second alternate code.
        `strSecondAlternateText` - The descriptive or textual name of the alternate identifier.
        `strNameofSecondAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strSecondAlternateCodingSystemVersionID` - This component carries the version for the coding system identified by components 10-12.
        `strCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.3.
        `strValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.1 is obtained.
        `strValueSetVersionID` - This component carries the version for the value set identified by CWE.15. The version is a date. The date is the date/time that the value set being used was published.
        `strAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.6.
        `strAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.4 is obtained.
        `strAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.18. The version is a date.
        `strSecondAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.12.
        `strSecondAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.10 is obtained.
        `strSecondAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.21. The version is a date.

    - #### setIPRStatus

          public void setIPRStatus(CWE objIPRStatus)

      Set IPR Status (CWE) This field is about Processing status for the Product/Service Group (if Adjudicate as Group = "Y") or Product/Service Line Item.
      Parameters:
        `objIPRStatus` - - object of IPR Status.

    - #### getIPRDateOrTime

          public DTM getIPRDateOrTime()

      Retrieve IPR Date/Time (DTM) This field is about Date/Time IPR was created.
      Returns:
        DTM - object of IPR Date/Time.

    - #### setIPRDateOrTime

          public void setIPRDateOrTime(java.lang.String strIPRDateOrTime)

      Set IPR Date/Time (DTM) This field is about Date/Time IPR was created.
      Parameters:
        `strIPRDateOrTime` - - string of IPR Date/Time.

    - #### setIPRDateOrTime

          public void setIPRDateOrTime(DTM objIPRDateOrTime)

      Set IPR Date/Time (DTM) This field is about Date/Time IPR was created.
      Parameters:
        `objIPRDateOrTime` - - object of IPR Date/Time.

    - #### getAdjudicatedOrPaidAmount

          public CP getAdjudicatedOrPaidAmount()

      Retrieve Adjudicated/Paid Amount (CP) This field is about Adjudicated Amount for the Product/Service Group or Product/Service Line Item, which could be 0 = sum of all Payer adjustments (Adjustment Amount on ADJ).
      Returns:
        CP - object of Adjudicated/Paid Amount.

    - #### setAdjudicatedOrPaidAmount

          public void setAdjudicatedOrPaidAmount(MO objPrice,
                                        java.lang.String strPriceType,
                                        java.lang.String strFormValue,
                                        java.lang.String strToValue,
                                        CWE objRangeUnits,
                                        java.lang.String strRangeType)

      Set Adjudicated/Paid Amount (CP) This field is about Adjudicated Amount for the Product/Service Group or Product/Service Line Item, which could be 0 = sum of all Payer adjustments (Adjustment Amount on ADJ).
      Parameters:
        `objPrice` - - Gives information about the Price.
        `strPriceType` - - Gives information about Type of Price.
        `strFormValue` - - Gives information about Form Value.
        `strToValue` - - Tell about the To value.
        `objRangeUnits` - - Specifies about the range of the units.
        `strRangeType` - - Specifies about the Type of range.

    - #### setAdjudicatedOrPaidAmount

          public void setAdjudicatedOrPaidAmount(CP objAdjudicatedOrPaidAmount)

      Set Adjudicated/Paid Amount (CP) This field is about Adjudicated Amount for the Product/Service Group or Product/Service Line Item, which could be 0 = sum of all Payer adjustments (Adjustment Amount on ADJ).
      Parameters:
        `objAdjudicatedOrPaidAmount` - - object of Adjudicated/Paid Amount.

    - #### getExpectedPaymentDateOrTime

          public DTM getExpectedPaymentDateOrTime()

      Retrieve Expected Payment Date/Time (DTM) This field is about Date payment is expected for this IPR.
      Returns:
        DTM - object of Expected Payment Date/Time.

    - #### setExpectedPaymentDateOrTime

          public void setExpectedPaymentDateOrTime(java.lang.String strExpectedPaymentDateOrTime)

      Set Expected Payment Date/Time (DTM) This field is about Date payment is expected for this IPR.
      Parameters:
        `strExpectedPaymentDateOrTime` - - string of Expected Payment Date/Time.

    - #### setExpectedPaymentDateOrTime

          public void setExpectedPaymentDateOrTime(DTM objExpectedPaymentDateOrTime)

      Set Expected Payment Date/Time (DTM) This field is about Date payment is expected for this IPR.
      Parameters:
        `objExpectedPaymentDateOrTime` - - object of Expected Payment Date/Time.

    - #### getIPRChecksum

          public ST getIPRChecksum()

      Retrieve IPR Checksum (ST) This field is about Conditional, if Status = "Accepted", then Required, else Not Permitted.
      Returns:
        ST - object of IPR Checksum.

    - #### setIPRChecksum

          public void setIPRChecksum(java.lang.String strIPRChecksum)

      Retrieve IPR Checksum (ST) This field is about Conditional, if Status = "Accepted", then Required, else Not Permitted.
      Parameters:
        `strIPRChecksum` - - object of IPR Checksum.

    - #### setIPRChecksum

          public void setIPRChecksum(ST objIPRChecksum)

      Retrieve IPR Checksum (ST) This field is about Conditional, if Status = "Accepted", then Required, else Not Permitted.
      Parameters:
        `objIPRChecksum` - - object of IPR Checksum.

    - #### validate

          public boolean validate()
                           throws InvalidSegmentException

      Validates HL7 Message objects . Validate method checks for validation each and every segments in side the Message object against specified message Structure. Validation checks include optionality of segment or group. It also verifies the number of times segment or group is repeated in message. e.g {IPR} while parsing IPR segment validate method will check for its mandatory presence. [IPR] in this case validate will throw exception if one tries to enter more than one IPR segment.
      Specified by:
        `validate` in interface `ISegment`
      Overrides:
        `validate` in class `Segment`
      Returns:
        boolean - true or false.
      Throws:
        `InvalidSegmentException` - Throws when Segment Validation fails.