PwsSaveVendor

Overview


This web service inserts or updates a single vendor based on a detailed vendor structure (PwsVendorDetail). The service returns the identity of the vendor (PwsVendorRef) that has been inserted or updated. The caller can optionally request that the full vendor element (PwsVendorElement) be included in the response.  

Request Format


PwsSaveVendor Request
  • PwsSaveVendor
    • serviceRequest: PwsSaveVendorRq
      • RequestId: Int32
      • SessionTicket: String
      • ClearResourceVendorPayeesFlag: Boolean
      • ClearVendorReconciliationGlAcctFlag: Boolean
      • FullDetailFlag: Boolean
      • Vendor: PwsVendorDetail
      • OverrideCostCardWarningFlag: Boolean

Request Elements


Element

Data Type

Required?

Default

Description

Sample Data

RequestId

Int32

No


Click here for more information.

SessionTicket

String

Yes 


Click here for more information.

AaNO7kKwfPfmXiw5wd7KdQ==

ClearResourceVendorPayeesFlag

Boolean

No 

false

If set to 'true', the resource vendor payees will be cleared.

false

ClearVendorReconciliationGlAcctFlag

Boolean

No 

false 

If set to 'true', the vendor reconciliation general ledger account will be cleared.

false

FullDetailFlag

Boolean

No 

false 

If set to "true", the complete vendor detail will be included in response.

true

Vendor

PwsVendorDetail

Yes


The detailed vendor information to be inserted or updated.


OverrideCostCardWarningFlagBooleanNofalseThis service will fail if you attempt to change the cost center and there are unpaid cost cards associated with the vendor. If you want the cost center to be changed regardless, you may specify this flag as true to override the error.false

Request Usage Example(s)


Example 01
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pws="http://projectorpsa.com/PwsProjectorServices/" xmlns:req="http://projectorpsa.com/DataContracts/Requests/" xmlns:com="http://projectorpsa.com/DataContracts/Shared/Common/">
   <soapenv:Header/>
   <soapenv:Body>
      <pws:PwsSaveVendor>
         <pws:serviceRequest>
            <req:RequestId>1</req:RequestId>
            <req:SessionTicket>AaNO7kKwfPfmXiw5wd7KdQ==</req:SessionTicket>
            <req:ClearResourceVendorPayeesFlag>false</req:ClearResourceVendorPayeesFlag>
            <req:ClearVendorReconciliationGlAcctFlag>false</req:ClearVendorReconciliationGlAcctFlag>
            <req:FullDetailFlag>true</req:FullDetailFlag>
            <req:Vendor>
               <com:VendorName>ABC Card</com:VendorName>
               <com:VendorNumber>ABC Card</com:VendorNumber>
               <com:ExpenseReportPayeeFlag>true</com:ExpenseReportPayeeFlag>
               <com:InactiveFlag>false</com:InactiveFlag>
               <com:ResourceVendorFlag>false</com:ResourceVendorFlag>
               <com:VendorInvoicePayeeFlag>true</com:VendorInvoicePayeeFlag>
               <com:SubcontractorInvoicePayeeFlag>true</com:SubcontractorInvoicePayeeFlag>
               <com:AnyResourceFlag>true</com:AnyResourceFlag>
               <com:CostCenterIdentity>
                  <com:CostCenterName>USA</com:CostCenterName>
                  <com:CostCenterNumber>USA</com:CostCenterNumber>
               </com:CostCenterIdentity>
            </req:Vendor>
         </pws:serviceRequest>
      </pws:PwsSaveVendor>
   </soapenv:Body>
</soapenv:Envelope>

Response Format


PwsSaveVendor Response

Response Elements


Element

Data Type

Description

Sample Data

Messages

PwsMessage[]

The web service response status and message. Click here for more information.


ResponseId

Int32

Click here for more information.

1

Status

RequestStatus

Click here for more information.

Ok 

ServerTimestampUtc

DateTime

Click here for more information.

2018-03-06T18:24:21.1133412Z

Vendor

PwsVendorElement

The complete set of information about the vendor. This will only be returned if FullDetailFlag is set to 'true'.


VendorIdentity

PwsVendorRef

The unique keys used to identify the vendor.


Response Usage Examples


Example 01
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <PwsSaveVendorResponse xmlns="http://projectorpsa.com/PwsProjectorServices/">
         <PwsSaveVendorResult xmlns:a="http://projectorpsa.com/DataContracts/Responses/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <Messages xmlns="http://projectorpsa.com/CommonServices/" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
            <ResponseId xmlns="http://projectorpsa.com/CommonServices/">1</ResponseId>
            <Status xmlns="http://projectorpsa.com/CommonServices/">Ok</Status>
            <ServerTimestampUtc xmlns="http://projectorpsa.com/CommonServices/">2018-03-06T18:24:21.1133412Z</ServerTimestampUtc>
            <a:Vendor xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:LastUpdatedByUser>
                  <b:UserDisplayName>Jack Spratt</b:UserDisplayName>
                  <b:UserId i:nil="true"/>
                  <b:UserReferenceSystemId>E123</b:UserReferenceSystemId>
                  <b:UserUid>1152921504607011056</b:UserUid>
               </b:LastUpdatedByUser>
               <b:LastUpdatedTimestamp>2018-03-06T18:24:19.33Z</b:LastUpdatedTimestamp>
               <b:ResourceIdentity i:nil="true"/>
               <b:VendorDetail>
                  <b:VendorId i:nil="true"/>
                  <b:VendorName>ABC Card</b:VendorName>
                  <b:VendorUid>1152921504607055893</b:VendorUid>
                  <b:VendorNumber>ABC Card</b:VendorNumber>
                  <b:ExpenseReportPayeeFlag>true</b:ExpenseReportPayeeFlag>
                  <b:InactiveFlag>false</b:InactiveFlag>
                  <b:ResourceVendorFlag>false</b:ResourceVendorFlag>
                  <b:VendorInvoicePayeeFlag>true</b:VendorInvoicePayeeFlag>
                  <b:SubcontractorInvoicePayeeFlag>true</b:SubcontractorInvoicePayeeFlag>
                  <b:AnyResourceFlag>true</b:AnyResourceFlag>
                  <b:CostCenterIdentity>
                     <b:CostCenterId i:nil="true"/>
                     <b:CostCenterName>USA</b:CostCenterName>
                     <b:CostCenterNumber>USA</b:CostCenterNumber>
                     <b:CostCenterUid>1152921504606867361</b:CostCenterUid>
                  </b:CostCenterIdentity>
                  <b:NewVendorName i:nil="true"/>
                  <b:NewVendorNumber i:nil="true"/>
                  <b:ResourceVendorPayeeIdentities/>
                  <b:Timestamp>AAAAAA64NiE=</b:Timestamp>
                  <b:VendorReconciliationGlAcct i:nil="true"/>
               </b:VendorDetail>
            </a:Vendor>
            <a:VendorIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:VendorId i:nil="true"/>
               <b:VendorName>ABC Card</b:VendorName>
               <b:VendorUid>1152921504607055893</b:VendorUid>
               <b:VendorNumber>ABC Card</b:VendorNumber>
            </a:VendorIdentity>
         </PwsSaveVendorResult>
      </PwsSaveVendorResponse>
   </s:Body>
</s:Envelope>

PwsSaveVendor - Common Errors and Warnings

ErrorNumber

ErrorCode

ErrorText

27003

NewVendorMustHaveNameAndNumberSpecified

New Vendor Must have both New Name and New Number Specified.

27004NewVendorMustHaveCostCenterSpecifiedNew Vendor Must be placed in an existing Cost Center.
50024EntityNotFoundEntity PwsCostCenterRef was not found.
59916VendorRefInvalidVendorRef is required.
59918VendorNotFoundVendor not found. Another user may have deleted it.
59919VendorNumberNotUniqueVendor number is not unique.
59928VendorReconciliationAcctNotNullVendorReconciliationGlAccount must be null if ClearVendorReconciliationGlAcctFlag is set.
59929ResourceVendorPayeeListNotNullList of resource vendor payees must be empty if ClearResourceVendorPayeesFlag is set.
59932ExpenseReportPayeeFlagCannotBeClearedAnyResourceFlag must be null and there may be no ResourceVendorPayees when ExpenseReportPayeeFlag is to be cleared.
59933AnyResourceFlagCannotBeSetOperation would result in AnyResourceFlag being set, but ResourceVendorPayees are specified.
59934VendorNameInUseSpecified vendor name already in use.
59935NewVendorNameRequiredNew Vendor Name is required on insert.
59936NewVendorNumberRequiredNew Vendor Number is required on insert.
59937ClearResourceVendorPayeesFlagNotSetOperation would result in clearing Resource Vendor Payees, but ClearResourceVendorPayeesFlag is not set.