cdac.medinfo.sdk.hl7282.baselibs.segments

## Class PCE

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

- All Implemented Interfaces:
    ISegment

      public class PCE
      extends Segment

  PCE - Patient Charge Cost Center Exception

  The Patient Charge Cost Center Exception segment identifies the Patient Price associated with Cost Center and Patient Charge Identifier combinations that should be used in an instance that the item is billed to a patient.

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

  PCE-1 : Set ID - PCE (SI) Required
  PCE-2 : Cost Center Account Number(CX) Optional
  PCE-3 : Transaction Code (CWE) Optional
  PCE-4 : Transaction Amount - Unit (CP) Optional
  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
    `PCE()` Constructs the PCE segment.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `CX` | `getCostCenterAccountNumber()` Retrieves the Cost Center Account Number.
    `SI` | `getSetID_PCE()` Retrieves the Set ID - PCE.
    `CP` | `getTransactionAmountUnit()` Retrieves the Transaction Amount - Unit.
    `CWE` | `getTransactionCode()` Retrieves the Transaction Code.
    `void` | `setCostCenterAccountNumber(CX objCostCenterAccountNumber)` Set the Cost Center Account Number.
    `void` | `setCostCenterAccountNumber(java.lang.String strIDNumber, java.lang.String strCheckDigit, java.lang.String strCheckDigitScheme, HD objAssigningAuthority, java.lang.String strIdentifierTypeCode, HD objAssigningFacility, java.lang.String strEffectiveDate, java.lang.String strExpirationDate, CWE objAssigningJurisdiction, CWE objAssigningAgencyOrDepartment, java.lang.String strSecurityCheck, java.lang.String strSecurityCheckScheme)` Set the Cost Center Account Number.
    `void` | `setSetId_PCE(SI objSetId_PCE)` Set the Set ID - PCE.
    `void` | `setSetId_PCE(java.lang.String strSetId_PCE)` Set the Set ID - PCE.
    `void` | `setTransactionAmountUnit(CP objTransactionAmountUnit)` Set the Transaction Amount - Unit.
    `void` | `setTransactionAmountUnit(MO objPrice, java.lang.String strPriceType, java.lang.String strFromValue, java.lang.String strToValue, CWE objRangeUnits, java.lang.String strRangeType)` Set the Transaction Amount - Unit.
    `void` | `setTransactionCode(CWE objTransactionCode)` Set the Transaction Code.
    `void` | `setTransactionCode(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 the Transaction Code.
    `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

    - #### PCE

          public PCE()

      Constructs the PCE segment.

  - ### Method Detail

    - #### getSetID_PCE

          public SI getSetID_PCE()

      Retrieves the Set ID - PCE. This field contains a sequential number that identifies this segment within a given material item segment group.
      Returns:
        SI - setID_PCE

    - #### getCostCenterAccountNumber

          public CX getCostCenterAccountNumber()

      Retrieves the Cost Center Account Number. This field would contain the specific general ledger cost center account number associated with a department that may issue or charge for this item.
      Returns:
        CX - costCenterAccountNumber

    - #### getTransactionCode

          public CWE getTransactionCode()

      Retrieves the Transaction Code. This field contains a code that is used by a billing system to charge for the inventory supply item, the descriptive name of the patient charge for that system (as it may appear on a patient's bill or charge labels) and the name of the coding system that assigned the charge code.
      Returns:
        CWE - transactionCode

    - #### getTransactionAmountUnit

          public CP getTransactionAmountUnit()

      Retrieves the Transaction Amount - Unit. The price that a department charges to a patient for this inventory supply item when using the Patient Charge Billing code present in this segment.
      Returns:
        CP - transactionAmountUnit

    - #### setSetId_PCE

          public void setSetId_PCE(java.lang.String strSetId_PCE)

      Set the Set ID - PCE. This field contains a sequential number that identifies this segment within a given material item segment group.
      Parameters:
        `strSetId_PCE` - Specifies Set Id - PCE

    - #### setSetId_PCE

          public void setSetId_PCE(SI objSetId_PCE)

      Set the Set ID - PCE. This field contains a sequential number that identifies this segment within a given material item segment group.
      Parameters:
        `objSetId_PCE` - Specifies Set Id - PCE

    - #### setCostCenterAccountNumber

          public void setCostCenterAccountNumber(java.lang.String strIDNumber,
                                        java.lang.String strCheckDigit,
                                        java.lang.String strCheckDigitScheme,
                                        HD objAssigningAuthority,
                                        java.lang.String strIdentifierTypeCode,
                                        HD objAssigningFacility,
                                        java.lang.String strEffectiveDate,
                                        java.lang.String strExpirationDate,
                                        CWE objAssigningJurisdiction,
                                        CWE objAssigningAgencyOrDepartment,
                                        java.lang.String strSecurityCheck,
                                        java.lang.String strSecurityCheckScheme)

      Set the Cost Center Account Number. This field would contain the specific general ledger cost center account number associated with a department that may issue or charge for this item.
      Parameters:
        `strIDNumber` - Specifies the value of the identifier itself.
        `strCheckDigit` - It is part of the identifying number used in the sending application.
        `strCheckDigitScheme` - Contains the code identifying the check digit scheme employed. Suggested Values NP,ISO,M10,M11.[Refer table No.0061].
        `objAssigningAuthority` - The assigning authority is a unique name of the system (or organization or agency or department) that creates the data. .
        `strIdentifierTypeCode` - Specifies a code corresponding to the type of identifier.In some cases, this code may be used as a qualifier to the "Assigning authority" component.[Refer table No 0203]
        `objAssigningFacility` - Specifies the place or location identifier where the identifier was first assigned to the patient.
        `strEffectiveDate` - Specifies the first date, if known, on which the address is valid and active.
        `strExpirationDate` - Specifies the last date, if known, on which the address is valid and active.
        `objAssigningJurisdiction` - Specifies the geo-political body that assigned the identifier.
        `objAssigningAgencyOrDepartment` - Specifies agency or department that assigned the identifier.
        `strSecurityCheck` - is used to communicate the version code.
        `objSecurityCheckSCheme` - is used to transmit information intended to validate veracity of the supplied identifier

    - #### setCostCenterAccountNumber

          public void setCostCenterAccountNumber(CX objCostCenterAccountNumber)

      Set the Cost Center Account Number. This field would contain the specific general ledger cost center account number associated with a department that may issue or charge for this item.
      Parameters:
        `objCostCenterAccountNumber` - Object of Cost Center Account Number

    - #### setTransactionCode

          public void setTransactionCode(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 the Transaction Code. This field contains a code that is used by a billing system to charge for the inventory supply item, the descriptive name of the patient charge for that system (as it may appear on a patient's bill or charge labels) and the name of the coding system that assigned the charge code.
      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 infarction.
        `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.

    - #### setTransactionCode

          public void setTransactionCode(CWE objTransactionCode)

      Set the Transaction Code. This field contains a code that is used by a billing system to charge for the inventory supply item, the descriptive name of the patient charge for that system (as it may appear on a patient's bill or charge labels) and the name of the coding system that assigned the charge code.
      Parameters:
        `objTransactionCode` - Object of Transaction Code.

    - #### setTransactionAmountUnit

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

      Set the Transaction Amount - Unit. The price that a department charges to a patient for this inventory supply item when using the Patient Charge Billing code present in this segment.
      Parameters:
        `objPrice` - Specifies an amount of money and the denomination in which it is expressed.
        `strPriceType` - Specifies a coded value, data type ID.[Refer to HL7 Table 0205] Suggested Values AP,DC,IC,PF,TF,TP,UP.
        `strFromValue` - Specifies the "range" along with strToValue.
        `strToValue` - Specifies the "range" along with strFromValue.
        `objRangeUnits` - Specifies This describes the units associated with the range, e.g., seconds, minutes
        `strRangeType` - Refer to HL7 Table 0298 - CP range type for valid values.(P,F)

    - #### setTransactionAmountUnit

          public void setTransactionAmountUnit(CP objTransactionAmountUnit)

      Set the Transaction Amount - Unit. The price that a department charges to a patient for this inventory supply item when using the Patient Charge Billing code present in this segment.
      Parameters:
        `objTransactionAmountUnit` - Object of Transaction Amount - Unit

    - #### 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 {PSH} while parsing PSH segment validate method will check for its mandatory presence. [PSH] in this case validate will throw exception if one tries to enter more than one PSH segment.
      Specified by:
        `validate` in interface `ISegment`
      Overrides:
        `validate` in class `Segment`
      Returns:
        boolean - true or false.
      Throws:
        `InvalidSegmentException` - If Segment Validation fails