API browser of CareCreditRequest450 COM module


/images/arrow_right.png ICareCreditResult::GetFirstService method space
Retrieves the first service record from the list of services.
 
Please note, that "simple/normal" qualifies as being added by the ICareCreditRequest::AddService method. The incurred cost records, that are optionally defined by the ICareCreditRequest::AddAddPlanningRecord method are not returned here but with the GetFirstPlanningRecord/GetNextPlanningRecord iterator.
 
If the return status is VARIANT_FALSE then the service record is not added to the list of services
space
/images/arrow_right.png Restful webservice calling syntax
[POST] /baseURL/ICareCreditResult/GetFirstService
[JSON input data] pICareCreditResult: longValue,    //interface address
[JSON result data] pbstrTariffType:
pbstrTariffCode:
pbstrTariffText:
pdQuantity:
pdTP:
pdTPV:
pdExternalFactor:
pdAmount:
pbstrRemark:
pbStatus:
"utf8StringValue",
"utf8StringValue",
"utf8StringValue",
doubleValue,
doubleValue,
doubleValue,
doubleValue,
doubleValue,
"utf8StringValue",
booleanValue
 
[HTTP result status] 200 Return status 200 signals a successful method call
204 Return status 204 (noContent) signals that the end of an iteration is reached
>= 400 Return status >= 400 signals an unsuccessful function call. The returned JSON{errorCode: code, errorText:"text"} supplies the error message the same as GetAbortInfo() would do.
space
/images/arrow_right.png C/C++ calling syntax
HRESULT GetFirstService( BSTR
BSTR
BSTR
double
double
double
double
double
BSTR
VARIANT_BOOL
*pbstrTariffType,
*pbstrTariffCode,
*pbstrTariffText,
*pdQuantity,
*pdTP,
*pdTPV,
*pdExternalFactor,
*pdAmount,
*pbstrRemark,
*pbStatus);
[C/C++ return value] S_OK This value is returned if the function call was successful.
S_FALSE This value is returned if the end of an iteration is reached
E_name This value is returned if the function call was unsuccessful and an error exception was generated. Note that if you are using SmartPointers an exception is thrown under these conditions.
space
/images/arrow_right.png Calling argument description
[out] BSTR *pbstrTariffType The official tariff type as defined by Forum Datenaustausch
[out] BSTR *pbstrTariffCode The tariff code as defined by the used tariff
[out] BSTR *pbstrTariffText The name of the tariff record as defined by the used tariff
[out] double *pdQuantity The quantity of the current service.
 
Note, that the quantity is defined as double, spanning zero and positive fractional values!
  • a zero quantity is used for "non-billable" and "pro memoria" services
  • positive quantities are used for "normal" services
  • fractional values are used whenever a part of the "full" service is used (e.g. quantity=0.5 for 500ml of a 1000ml infusion solution)
  • negative quantities are set for a storno to reflect the negative incurred cost situation
The quantity must not be rounded but given in full precision.
[out] double *pdTP The tax points (TP) of the current service.
[out] double *pdTPV The tax point value (TPV) of the current service.
[out] double *pdExternalFactor The external scaling factor used to scale the service e.g. to give a discount or surcharge.
[out] double *pdAmount dAmount is the caused incurred cost given by the tariff record and calculated as follows:
dTariffQuantity * dTP * dTPV * dExternalFactor = dAmount

 
The equation is calculated in full precision and the result rounded to 2 significant decimal places.
[out] BSTR *pbstrRemark An optional remark for the given service
[out,retval] VARIANT_BOOL *pbStatus Return status of the method. If pbStatus is VARIANT_FALSE the end of data is reached
space