<?xml version="1.0"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/PCS.ServiceModel" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/PCS.ServiceModel" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="Echo">
    <xs:sequence>
      <xs:element minOccurs="0" name="offset" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Echo" nillable="true" type="tns:Echo" />
  <xs:complexType name="GetCustomerStatementData">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:MessageBaseReq">
        <xs:sequence>
          <xs:element minOccurs="0" name="MinRecordID" type="xs:long" />
          <xs:element minOccurs="0" name="PageNo" type="xs:int" />
          <xs:element minOccurs="0" name="invoiceMonth" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="invoiced" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="GetCustomerStatementData" nillable="true" type="tns:GetCustomerStatementData" />
  <xs:complexType name="MessageBaseReq">
    <xs:sequence>
      <xs:element minOccurs="0" name="password" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="username" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="MessageBaseReq" nillable="true" type="tns:MessageBaseReq" />
  <xs:complexType name="GetPPOData">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:MessageBaseReq">
        <xs:sequence>
          <xs:element minOccurs="0" name="LineNo_From" type="xs:long" />
          <xs:element minOccurs="0" name="LineNo_To" type="xs:long" />
          <xs:element minOccurs="0" name="PageNo" type="xs:long" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="GetPPOData" nillable="true" type="tns:GetPPOData" />
  <xs:complexType name="EchoResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="response_code" type="xs:int" />
      <xs:element minOccurs="0" name="response_message" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="EchoResponse" nillable="true" type="tns:EchoResponse" />
  <xs:complexType name="GetCustomerStatementDataResponse">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:MessageBaseRes">
        <xs:sequence>
          <xs:element minOccurs="0" name="PageCount" type="xs:int" />
          <xs:element minOccurs="0" name="PageNo" type="xs:int" />
          <xs:element minOccurs="0" name="PageSize" type="xs:int" />
          <xs:element minOccurs="0" name="TotalRecords" type="xs:int" />
          <xs:element minOccurs="0" name="data" nillable="true" type="tns:ArrayOfCustomerStatementLineData" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="GetCustomerStatementDataResponse" nillable="true" type="tns:GetCustomerStatementDataResponse" />
  <xs:complexType name="MessageBaseRes">
    <xs:sequence>
      <xs:element minOccurs="0" name="response_code" type="xs:int" />
      <xs:element minOccurs="0" name="response_message" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="MessageBaseRes" nillable="true" type="tns:MessageBaseRes" />
  <xs:complexType name="ArrayOfCustomerStatementLineData">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="CustomerStatementLineData" nillable="true" type="tns:CustomerStatementLineData" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfCustomerStatementLineData" nillable="true" type="tns:ArrayOfCustomerStatementLineData" />
  <xs:complexType name="CustomerStatementLineData">
    <xs:sequence>
      <xs:element minOccurs="0" name="accNo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="accNumber" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="address1" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="analysis1" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="analysis2" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="analysis3" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="appName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="batchType" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="carKilometers" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="carNo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="carType" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="cardNumber" type="xs:long" />
      <xs:element minOccurs="0" name="customerName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="department" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="description" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="discountValue" type="xs:decimal" />
      <xs:element minOccurs="0" name="district" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="driver" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="dutyPolicy" type="xs:int" />
      <xs:element minOccurs="0" name="dutyValue" type="xs:decimal" />
      <xs:element minOccurs="0" name="endOfDay" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="fax" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="invoiceId" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="lineItemId" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="mannual" type="xs:int" />
      <xs:element minOccurs="0" name="netValue" type="xs:decimal" />
      <xs:element minOccurs="0" name="permissions" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="poBox" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="postalCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="price" type="xs:decimal" />
      <xs:element minOccurs="0" name="prodCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="pumpNumber" type="xs:long" />
      <xs:element minOccurs="0" name="quant" type="xs:int" />
      <xs:element minOccurs="0" name="recNo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="receiptId" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="stCarNo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="station" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="stationBatch" type="xs:long" />
      <xs:element minOccurs="0" name="stationName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="telephone" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="transType" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="transactionDate" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="transactionTime" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="type" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="value" type="xs:decimal" />
      <xs:element minOccurs="0" name="vatPolicy" type="xs:int" />
      <xs:element minOccurs="0" name="vatRate" type="xs:decimal" />
      <xs:element minOccurs="0" name="vatValue" type="xs:decimal" />
      <xs:element minOccurs="0" name="volume" type="xs:decimal" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="CustomerStatementLineData" nillable="true" type="tns:CustomerStatementLineData" />
  <xs:complexType name="GetPPODataResponse">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:MessageBaseRes">
        <xs:sequence>
          <xs:element minOccurs="0" name="PageNo" type="xs:int" />
          <xs:element minOccurs="0" name="PageSize" type="xs:int" />
          <xs:element minOccurs="0" name="TotalPages" type="xs:int" />
          <xs:element minOccurs="0" name="TotalRecords" type="xs:int" />
          <xs:element minOccurs="0" name="data" nillable="true" type="tns:ArrayOfPPOLineData" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="GetPPODataResponse" nillable="true" type="tns:GetPPODataResponse" />
  <xs:complexType name="ArrayOfPPOLineData">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="PPOLineData" nillable="true" type="tns:PPOLineData" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfPPOLineData" nillable="true" type="tns:ArrayOfPPOLineData" />
  <xs:complexType name="PPOLineData">
    <xs:sequence>
      <xs:element minOccurs="0" name="AccNo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="CarKM" type="xs:int" />
      <xs:element minOccurs="0" name="CarNo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="CardNo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="CustomerName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Latitute" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="LineitemID" type="xs:long" />
      <xs:element minOccurs="0" name="Longitute" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="NetValuePPO" nillable="true" type="xs:decimal" />
      <xs:element minOccurs="0" name="ProductCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="PumpNo" type="xs:int" />
      <xs:element minOccurs="0" name="Quant" type="xs:double" />
      <xs:element minOccurs="0" name="ReceiptNo" type="xs:long" />
      <xs:element minOccurs="0" name="StCarNo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="StationCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="StationName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="VatValuePPO" nillable="true" type="xs:decimal" />
      <xs:element minOccurs="0" name="Volume" type="xs:double" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PPOLineData" nillable="true" type="tns:PPOLineData" />
</xs:schema>