 API browser of drgValidator100 COM module
Interface version: | 1.00
Interface date: | 27 Jul 2007

The drgValidator is an ATL COM module which provides methods to browse, search, and validate records against the various DRG catalogs. Since the internals of swissDRG, swissDRG Additions, TarPSYS and APDRG differ significantly, patches to various methods of both the ISearch and IValidate interfaces have been applied to not have the necessity to change the COM interface of the drgValidator. As a consequence study the list of applied patches in the new and important features page. |  | space
Interfaces |  | 3 interface
IDRGValidator | Main interface for database handling and global settings |
ISearch | Search functionality over the data space of the selected DRG tariff catalog |
IValidate | Validation of service records according to the rules of the selected DRG tariff catalog |
Types |  |
type definitions | List of all used builtin, composite and enumeration types |
Important documents about the usage and handling |  |
Document | What to do in a 64bit environment - is there a 64bit Sumex1 COM dll? |
Document | New and important features of the swissDRG tariff enabled in drgValidator100 |
Document | setParameter feature of the AddService method for activating/defining special features |
Document | General usage of the drgValidator100 COM module - an overview |
Document | drgValidatorServer100: Introduction, overview and usage of the Restful Webservice Server |

© by sumex1.net - all rights reserved


  • drgValidator100
  • IDRGValidator

IDRGValidator interface |  | V1.00/27 Jul 2007
The IDRGValidator interface handles connections to the DRG database holding various DRG catalogs. It provides methods to open and close database connections, and query general database parameters, such as the database or module versions. A connection to the database must be opened via IDRGValidator before methods from any of the other interfaces can be used. |  | space
space
Methods |  | 10 methods
Close | Closes the DRG database. |
GetAbortInfo | Get the abort information |
GetFirstMDC | Retrieves the information for the first Major Diagnostic Category (MDC) of the selected DRG tariff catalog |
GetFirstTariff | Retrieves the information for the first DRG tariff catalog covered by the validator |
GetMDCs | Method for collecting all Major Diagnostic Category (MDC) data covered by the validator returned as JSON array |
GetNextMDC | Retrieves the information for the next Major Diagnostic Category (MDC) of the selected DRG tariff catalog |
GetNextTariff | Retrieves the information for the next DRG tariff catalog covered by the validator |
GetTariffs | Method for collecting all DRG tariff catalogs covered by the validator returned as JSON array |
Open | Opens the DRG database |
OpenEx | Opens the DRG database by supplying a connection string for the ADO connection object |
space
Properties |  | 12 properties
[get] CreateDRGValidator | Creates an instance of the main IDRGValidator interface |
[get] CreateSearch | Creates an instance of the ISearch interface |
[get] CreateValidate | Create an instance of the IValidate interface |
[put] DestructDRGValidator | Destructs/invalidates a main instance of the IDRGValidator interface |
[put] DestructSearch | Destructs/invalidates this ISearch interface instance |
[put] DestructValidate | Destructs/invalidates this IValidate interface instance |
[get/put] EnableLog | Get and Set the log activity for the module |
[get/put] Language | Get and Set the language for the drgValidator module |
[get] ModuleVersion | Get the version of the drgValidator module |
[get] ModuleVersionText | Get the textual version of the drgValidator module |
[get/put] WildCard | Get and Set the match-all wildcard character for SQL queries. |
[get/put] WildCharacter | Get and Set the "match any single character" wildcard character for SQL queries. |
space |


  • IDRGValidator
  • Close

IDRGValidator::Close method |  |  | space
Closes the DRG database. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IDRGValidator/Close
[JSON input data] | pIDRGValidator: | longValue, //interface address
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT Close( | VARIANT_BOOL | *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
Calling argument description |  |  |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IDRGValidator
  • GetAbortInfo

IDRGValidator::GetAbortInfo method |  |  | space
Get the abort information |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IDRGValidator/GetAbortInfo
[JSON input data] | pIDRGValidator: | longValue, //interface address
[JSON result data] | pbstrAbort: pbStatus: | "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
C/C++ calling syntax |  |  |
HRESULT GetAbortInfo( | BSTR VARIANT_BOOL | *pbstrAbort, *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
Calling argument description |  |  |
[out] BSTR | *pbstrAbort | Abort information string. If the abort string is empty then there is no error condition - S_FALSE was set (e.g. in an iterator to signal end_of_data) |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IDRGValidator
  • GetFirstMDC

IDRGValidator::GetFirstMDC method |  |  | space
Retrieves the information for the first Major Diagnostic Category (MDC) of the selected DRG tariff catalog |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IDRGValidator/GetFirstMDC
[JSON input data] | pIDRGValidator: bstrTariffType: | longValue, //interface address "utf8StringValue"
[JSON result data] | pbstrCode: pbstrName: pbStatus: | "utf8StringValue", "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
C/C++ calling syntax |  |  |
HRESULT GetFirstMDC( | BSTR BSTR BSTR VARIANT_BOOL | bstrTariffType, *pbstrCode, *pbstrName, *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
Calling argument description |  |  |
[in] BSTR | bstrTariffType | Tariff catalog to browse. Use the methods drgValidator::GetFirstTariff/drgValidator::GetNextTariff to iterate over all covered DRG tariff catalogs |
[out] BSTR | *pbstrCode | MDC code |
[out] BSTR | *pbstrName | MDC name |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IDRGValidator
  • GetFirstTariff

IDRGValidator::GetFirstTariff method |  |  | space
Retrieves the information for the first DRG tariff catalog covered by the validator |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IDRGValidator/GetFirstTariff
[JSON input data] | pIDRGValidator: | longValue, //interface address
[JSON result data] | pbstrTariffType: pbstrName: pbstrVersion: pdDate: pbStatus: | "utf8StringValue", "utf8StringValue", "utf8StringValue", "stringISODateValue", 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
C/C++ calling syntax |  |  |
HRESULT GetFirstTariff( | BSTR BSTR BSTR DATE VARIANT_BOOL | *pbstrTariffType, *pbstrName, *pbstrVersion, *pdDate, *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
Calling argument description |  |  |
[out] BSTR | *pbstrTariffType | The type of the DRG tariff catalog |
[out] BSTR | *pbstrName | The name of the DRG tariff catalog |
[out] BSTR | *pbstrVersion | The version of the DRG tariff catalog |
[out] DATE | *pdDate | The issue date of the DRG tariff catalog |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IDRGValidator
  • GetMDCs

IDRGValidator::GetMDCs method |  |  | space
This method has a Restful Webservice representation only! Method for collecting all Major Diagnostic Category (MDC) data covered by the validator returned as JSON array. Please note that IDRGValidator::GetMDCs takes over the functionality of the iterator pair IDRGValidator::GetFirstMDC / IDRGValidator::GetNextMDC with a single call, making the latter superfluous. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IDRGValidator/GetMDCs
[JSON input data] | pIDRGValidator: bstrTariffType: | longValue, //interface address "utf8StringValue"
[JSON result array] | { pbstrCode: pbstrName: pbStatus: | "utf8StringValue", "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
Calling argument description |  |  |
[in] BSTR | bstrTariffType | Tariff catalog to browse. Use the methods drgValidator::GetFirstTariff/drgValidator::GetNextTariff to iterate over all covered DRG tariff catalogs |
[out] BSTR | *pbstrCode | MDC code |
[out] BSTR | *pbstrName | MDC name |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IDRGValidator
  • GetNextMDC

IDRGValidator::GetNextMDC method |  |  | space
Retrieves the information for the next Major Diagnostic Category (MDC) of the selected DRG tariff catalog |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IDRGValidator/GetNextMDC
[JSON input data] | pIDRGValidator: | longValue, //interface address
[JSON result data] | pbstrCode: pbstrName: pbStatus: | "utf8StringValue", "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
C/C++ calling syntax |  |  |
HRESULT GetNextMDC( | BSTR BSTR VARIANT_BOOL | *pbstrCode, *pbstrName, *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
Calling argument description |  |  |
[out] BSTR | *pbstrCode | MDC code |
[out] BSTR | *pbstrName | MDC name |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IDRGValidator
  • GetNextTariff

IDRGValidator::GetNextTariff method |  |  | space
Retrieves the information for the next DRG tariff catalog covered by the validator |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IDRGValidator/GetNextTariff
[JSON input data] | pIDRGValidator: | longValue, //interface address
[JSON result data] | pbstrTariffType: pbstrName: pbstrVersion: pdDate: pbStatus: | "utf8StringValue", "utf8StringValue", "utf8StringValue", "stringISODateValue", 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
C/C++ calling syntax |  |  |
HRESULT GetNextTariff( | BSTR BSTR BSTR DATE VARIANT_BOOL | *pbstrTariffType, *pbstrName, *pbstrVersion, *pdDate, *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
Calling argument description |  |  |
[out] BSTR | *pbstrTariffType | The type of the DRG tariff catalog |
[out] BSTR | *pbstrName | The name of the DRG tariff catalog |
[out] BSTR | *pbstrVersion | The version of the DRG tariff catalog |
[out] DATE | *pdDate | The issue date of the DRG tariff catalog |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IDRGValidator
  • GetTariffs

IDRGValidator::GetTariffs method |  |  | space
This method has a Restful Webservice representation only! Method for collecting all DRG tariff catalogs covered by the validator returned as JSON array. Please note that IDRGValidator::GetTariffs takes over the functionality of the iterator pair IDRGValidator::GetFirstTariff / IDRGValidator::GetNextTariff with a single call, making the latter superfluous. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IDRGValidator/GetTariffs
[JSON input data] | pIDRGValidator: | longValue, //interface address
[JSON result array] | { pbstrTariffType: pbstrName: pbstrVersion: pdDate: pbStatus: | "utf8StringValue", "utf8StringValue", "utf8StringValue", "stringISODateValue", 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
Calling argument description |  |  |
[out] BSTR | *pbstrTariffType | The type of the DRG tariff catalog |
[out] BSTR | *pbstrName | The name of the DRG tariff catalog |
[out] BSTR | *pbstrVersion | The version of the DRG tariff catalog |
[out] DATE | *pdDate | The issue date of the DRG tariff catalog |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IDRGValidator
  • Open

IDRGValidator::Open method |  |  | space
Opens the DRG database |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IDRGValidator/Open
[JSON input data] | pIDRGValidator: eLanguage: | longValue, //interface address longValue
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT Open( | LanguageType VARIANT_BOOL | eLanguage, *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
Calling argument description |  |  |
[in] LanguageType | eLanguage | The choosen language of the tariff that should be opened |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IDRGValidator
  • OpenEx

IDRGValidator::OpenEx method |  |  | space
Opens the DRG database by supplying a connection string for the ADO connection object The use of OpenEx is deprecated. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IDRGValidator/OpenEx
[JSON input data] | pIDRGValidator: bstrConnect: | longValue, //interface address "utf8StringValue"
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT OpenEx( | BSTR VARIANT_BOOL | bstrConnect, *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
Calling argument description |  |  |
[in] BSTR | bstrConnect | Connection string for the database code as an UDL |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IDRGValidator
  • CreateDRGValidator

IDRGValidator::CreateDRGValidator property |  |  | space
This property has a Restful Webservice representation only! Creates an instance of the main IDRGValidator interface. To delete/invalidate this interface instance, the counterpart property PutDestructDRGValidator must be explicitly called, since the pIDRGValidator address has a global scope and is not automatically destructed. |  |  |
space
Restful webservice calling syntax |  |  |
[GET] | /baseURL/ IDRGValidator/GetCreateDRGValidator
[JSON result data] | pIDRGValidator: | longValue //interface address
[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
Remarks |  |  |
This property has a Restful Webservice representation only! |  |  |
space |


  • IDRGValidator
  • CreateSearch

IDRGValidator::CreateSearch property | space
Creates an instance of the ISearch interface
space
Restful webservice calling syntax
[GET] | /baseURL/ IDRGValidator/GetCreateSearch?param
[param] pIDRGValidator= longValue
[JSON result data] pISearch: longValue //interface address
[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
C/C++ calling syntax
[get] HRESULT | CreateSearch( ISearch **peCreateSearch );
[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
Calling argument description
[out,retval] ISearch | **peCreateSearch | The created instance of the Isearch interface
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • ISearch **GetCreateSearch(void);
space


  • IDRGValidator
  • CreateValidate

IDRGValidator::CreateValidate property | space
Create an instance of the IValidate interface
space
Restful webservice calling syntax
[GET] | /baseURL/ IDRGValidator/GetCreateValidate?param
[param] pIDRGValidator= longValue
[JSON result data] pIValidate: longValue //interface address
[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
C/C++ calling syntax
[get] HRESULT | CreateValidate( IValidate **peCreateValidate );
[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
Calling argument description
[out,retval] IValidate | **peCreateValidate | The created instance of the Ivalidate interface
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • IValidate **GetCreateValidate(void);
space


  • IDRGValidator
  • DestructDRGValidator

IDRGValidator::DestructDRGValidator property |  |  | space
This property has a Restful Webservice representation only! Destructs/invalidates a main instance of the IDRGValidator interface. Please note, that all dependent, active interface instances generated with IDRGValidator::GetCreateValidate and/or IDRGSearch::GetCreateSearch under this main instances, are automatically destructed as well. The counterpart property to generate a main interface instance is IDRGValidator::GetCreateDRGValidator. |  |  |
space
Restful webservice calling syntax |  |  |
[PUT] | /baseURL/ IDRGValidator/PutDestructDRGValidator
[JSON input data] | pIDRGValidator: | longValue, //interface address
[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
Remarks |  |  |
This property has a Restful Webservice representation only! |  |  |
space |


  • IDRGValidator
  • DestructSearch

IDRGValidator::DestructSearch property |  |  | space
This property has a Restful Webservice representation only! Destructs/invalidates this ISearch interface instance. The counterpart property to generate an ISearch interface instance is IDRGValidator::GetCreateSearch. |  |  |
space
Restful webservice calling syntax |  |  |
[PUT] | /baseURL/ IDRGValidator/PutDestructSearch
[JSON input data] | pIDRGValidator: pISearch: | longValue, //interface address longValue, //interface address
[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
Remarks |  |  |
This property has a Restful Webservice representation only! |  |  |
space |


  • IDRGValidator
  • DestructValidate

IDRGValidator::DestructValidate property |  |  | space
This property has a Restful Webservice representation only! Destructs/invalidates this IValidate interface instance. The counterpart property to generate an IValidate interface instance is IDRGValidator::GetCreateValidate. |  |  |
space
Restful webservice calling syntax |  |  |
[PUT] | /baseURL/ IDRGValidator/PutDestructValidate
[JSON input data] | pIDRGValidator: pIValidate: | longValue, //interface address longValue, //interface address
[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
Remarks |  |  |
This property has a Restful Webservice representation only! |  |  |
space |


  • IDRGValidator
  • EnableLog

IDRGValidator::EnableLog property | space
Get and Set the log activity for the module. The default log activity is enYes.
space
Restful webservice calling syntax
[GET] | /baseURL/ IDRGValidator/GetEnableLog?param
[param] pIDRGValidator= longValue
[JSON result data] peEnableLog: longValue
[PUT] | /baseURL/ IDRGValidator/PutEnableLog
[JSON input data] pIDRGValidator:
eEnableLog: 		longValue, //interface address
longValue
[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
C/C++ calling syntax
[get] HRESULT | EnableLog( YesNoType *peEnableLog );
[put] HRESULT | EnableLog( YesNoType eEnableLog );
[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
Calling argument description
[out,retval] YesNoType | *peEnableLog
[in] YesNoType | eEnableLog
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • YesNoType *GetEnableLog(void);
  • void PutEnableLog( YesNoType lEnableLog);
space


  • IDRGValidator
  • Language

IDRGValidator::Language property | space
Get and Set the language for the drgValidator module. The default language is enGerman.
space
Restful webservice calling syntax
[GET] | /baseURL/ IDRGValidator/GetLanguage?param
[param] pIDRGValidator= longValue
[JSON result data] peLanguage: longValue
[PUT] | /baseURL/ IDRGValidator/PutLanguage
[JSON input data] pIDRGValidator:
eLanguage: 		longValue, //interface address
longValue
[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
C/C++ calling syntax
[get] HRESULT | Language( LanguageType *peLanguage );
[put] HRESULT | Language( LanguageType eLanguage );
[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
Calling argument description
[out,retval] LanguageType | *peLanguage | The language for the main interface defining the language of the error messages
[in] LanguageType | eLanguage | The language for the main interface defining the language of the error messages
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • LanguageType *GetLanguage(void);
  • void PutLanguage( LanguageType lLanguage);
space


  • IDRGValidator
  • ModuleVersion

IDRGValidator::ModuleVersion property | space
Get the version of the drgValidator module
space
Restful webservice calling syntax
[GET] | /baseURL/ IDRGValidator/GetModuleVersion?param
[param] pIDRGValidator= longValue
[JSON result data] pbstrModuleVersion: "utf8StringValue"
[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
C/C++ calling syntax
[get] HRESULT | ModuleVersion( BSTR *pbstrModuleVersion );
[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
Calling argument description
[out,retval] BSTR | *pbstrModuleVersion | The module version of the drgValidator module
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • BSTR *GetModuleVersion(void);
space


  • IDRGValidator
  • ModuleVersionText

IDRGValidator::ModuleVersionText property | space
Get the textual version of the drgValidator module
space
Restful webservice calling syntax
[GET] | /baseURL/ IDRGValidator/GetModuleVersionText?param
[param] pIDRGValidator= longValue
[JSON result data] pbstrModuleVersionText: "utf8StringValue"
[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
C/C++ calling syntax
[get] HRESULT | ModuleVersionText( BSTR *pbstrModuleVersionText );
[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
Calling argument description
[out,retval] BSTR | *pbstrModuleVersionText | The module version string of the drgValidator module
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • BSTR *GetModuleVersionText(void);
space


  • IDRGValidator
  • WildCard

IDRGValidator::WildCard property | space
Get and Set the match-all wildcard character for SQL queries.
You can use this property if you have imported the original DRG database into another database, which uses a different wildcard character for queries. The default match-all wildcard character is the percent symbol (%). With the drgValidator module you can always formulate a query using the asterisk symbol (*) as a wildcard, as in each query string a * is replaced by the wildcard character specified by this property before being executed.
space
Restful webservice calling syntax
[GET] | /baseURL/ IDRGValidator/GetWildCard?param
[param] pIDRGValidator= longValue
[JSON result data] pbstrWildCard: "utf8StringValue"
[PUT] | /baseURL/ IDRGValidator/PutWildCard
[JSON input data] pIDRGValidator:
bstrWildCard: 		longValue, //interface address
"utf8StringValue"
[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
C/C++ calling syntax
[get] HRESULT | WildCard( BSTR *pbstrWildCard );
[put] HRESULT | WildCard( BSTR bstrWildCard );
[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
Calling argument description
[out,retval] BSTR | *pbstrWildCard | The wildcard symbol
[in] BSTR | bstrWildCard | The wildcard symbol
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • BSTR *GetWildCard(void);
  • void PutWildCard( BSTR bstrWildCard);
space


  • IDRGValidator
  • WildCharacter

IDRGValidator::WildCharacter property | space
Get and Set the "match any single character" wildcard character for SQL queries.
You can use this property if you have ported the original DRG database into another database, which uses a different wild character for the queries. The default match-single-character wildcard character is the underscore symbol (_). With the drgValidator module you can always formulate a query using the question mark (?) as a wildcard, as in each query string a ? is replaced by the wildcard character specified by this property before execution.
space
Restful webservice calling syntax
[GET] | /baseURL/ IDRGValidator/GetWildCharacter?param
[param] pIDRGValidator= longValue
[JSON result data] pbstrWildCharacter: "utf8StringValue"
[PUT] | /baseURL/ IDRGValidator/PutWildCharacter
[JSON input data] pIDRGValidator:
bstrWildCharacter: 		longValue, //interface address
"utf8StringValue"
[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
C/C++ calling syntax
[get] HRESULT | WildCharacter( BSTR *pbstrWildCharacter );
[put] HRESULT | WildCharacter( BSTR bstrWildCharacter );
[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
Calling argument description
[out,retval] BSTR | *pbstrWildCharacter | The wildcard character symbol
[in] BSTR | bstrWildCharacter | The wildcard character symbol
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • BSTR *GetWildCharacter(void);
  • void PutWildCharacter( BSTR bstrWildCharacter);
space


  • ISearch

ISearch interface |  | V1.00/27 Jul 2007
The ISearch interface allows browsing and retrieval of detailed information from the selected DRG tariff catalog. Searches can be performed by code, name, or MDC respectively. The search terms may be specified literal or may include wildcards. After a successful search, all of the available information directly related to the search term is made available through the interface"s properties. Each search method (e.g. SearchCode, SearchName, and SearchMDC) produces a selection list composed of zero or more service records. The total number of records in the list can be retrieved using the method GetRecordCount. The record pointer is initially positioned at the first entry of the selection list. The available information related to the current record is made available through the interface"s properties. The methods MoveFirst, MoveLast, MoveNext, MovePrevious, PutAbsolutePosition, and GetAbsolutePosition are used to reposition the record pointer. |  | space
space
Methods |  | 12 methods
GetAbortInfo | Get the abort information |
GetAbsolutePosition | Gets the current absolute position of the record pointer in the selection list |
GetRecordCount | Gets the number of service records in the selection list based on the last search call. |
GetServices | Method for collecting all service records of the resulting search space in one call without the necessity to call the record positioning methods and the appropriate properties of this interface |
MoveFirst | Moves the record pointer to the first record in the selection list and makes that record the current service record |
MoveLast | Moves to the last record in the selection list and makes that record the current service record |
MoveNext | Moves to the next record in the selection list and makes that record the current service record |
MovePrevious | Moves to the previous record in the selection list object and makes that record the current service record |
PutAbsolutePosition | Positions the record pointer at the specified absolute position in the selection list |
SearchCode | This method searches for services by specifying code/code pattern |
SearchMDC | This method searches for services by specifying a MDC code/MDC code pattern |
SearchName | This method searches for services by specifying a name/name pattern |
space
Properties |  | 19 properties
[get] AgeRestriction | Denotes whether the selected service record has a 'age' restriction (enYes) or not (enNo) |
[get] AverageLengthOfStay | The average length of stay of the selected service record |
[get] Billable | The billable attribute denotes whether the selected service record is billable (enYes) or not (enNo) |
[get] Code | The DRG code of the selected service record |
[get] CodeType | The DRG code type of the selected service record |
[get] CostWeight | The cost weight of the selected service record |
[put] DestructSearch | Destructs/invalidates this IValidate interface instance |
[get] GenderRestriction | Denotes whether the selected service record has a 'gender' restriction (enYes) or not (enNo) |
[get] HighTrimPoint | The high trim point (HTP) of the selected service record |
[get] HighTrimPoint2 | The high trim point 2 (HTP2) of the selected service record |
[get] LOSRestriction | Denotes whether the selected service record has a 'length of stay' restriction (enYes) or not (enNo) |
[get] LowTrimPoint | The low trim point (LTP) of the selected service record |
[get] MDC | The Major Diagnostic Category (MDC) code of the selected service record |
[get] Name | The name of the selected service record |
[get] ServiceType | The DRG service type of the selected service record |
[get] TariffType | The tariff type the selected service record belongs to |
[get] TP | Tax points of the selected service record |
[get] ValidFrom | The validity start date of the selected service record |
[get] ValidTo | The validity end date of the selected service record |
space |


  • ISearch
  • GetAbortInfo

ISearch::GetAbortInfo method |  |  | space
Get the abort information |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ ISearch/GetAbortInfo
[JSON input data] | pISearch: | longValue, //interface address
[JSON result data] | pbstrAbort: pbStatus: | "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
C/C++ calling syntax |  |  |
HRESULT GetAbortInfo( | BSTR VARIANT_BOOL | *pbstrAbort, *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
Calling argument description |  |  |
[out] BSTR | *pbstrAbort | Abort information string. If the abort string is empty then there is no error condition - S_FALSE was set (e.g. in an iterator to signal end_of_data) |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • ISearch
  • GetAbsolutePosition

ISearch::GetAbsolutePosition method |  |  | space
Gets the current absolute position of the record pointer in the selection list. This method can be useful for implementing virtual selection lists. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ ISearch/GetAbsolutePosition
[JSON input data] | pISearch: | longValue, //interface address
[JSON result data] | plID: pbStatus: | longValue, 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
C/C++ calling syntax |  |  |
HRESULT GetAbsolutePosition( | long VARIANT_BOOL | *plID, *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
Calling argument description |  |  |
[out] long | *plID | The ID of the service record |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • ISearch
  • GetRecordCount

ISearch::GetRecordCount method |  |  | space
Gets the number of service records in the selection list based on the last search call. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ ISearch/GetRecordCount
[JSON input data] | pISearch: | longValue, //interface address
[JSON result data] | plSize: pbStatus: | longValue, 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
C/C++ calling syntax |  |  |
HRESULT GetRecordCount( | long VARIANT_BOOL | *plSize, *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
Calling argument description |  |  |
[out] long | *plSize | The total number of service records included |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • ISearch
  • GetServices

ISearch::GetServices method |  |  | space
This method has a Restful Webservice representation only! Method for collecting all service records of the resulting search space in one call without the necessity to call the record positioning methods and the appropriate properties of this interface. The services are returned as JSON array however large that search space might be. So this might be a memory and performance bottleneck. Possibly, one might call the IDRGSearch::GetRecordCount method to get the size of the search space prior to call GetServices unconditionally. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ ISearch/GetServices
[JSON input data] | pISearch: | longValue, //interface address
[JSON result array] | { pbstrTariffType: pbstrCode: pbstrName: pbstrMDC: peServiceType: peBillable: pdAverageLengthOfStay: pdCostWeight: pdTP: plLowTrimPoint: plHightTrimPoint: plHightTrimPoint2: pdValidTo: pdValidFrom: pbStatus: | "utf8StringValue", "utf8StringValue", "utf8StringValue", "utf8StringValue", longValue, longValue, doubleValue, doubleValue, doubleValue, longValue, longValue, longValue, "stringISODateValue", "stringISODateValue", 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
Calling argument description |  |  |
[out] BSTR | *pbstrTariffType | The tariffType of the currently focused service |
[out] BSTR | *pbstrCode | The code of the currently focused service |
[out] BSTR | *pbstrName | The name of the currently focused service |
[out] BSTR | *pbstrMDC | The major diagnostic code (MDC) that the currently focused service belongs to |
[out] ServiceType | *peServiceType | The type of service defined for the currently focused service |
[out] YesNoType | *peBillable | The flag indicating whether the currently focused service is billable (enYes) or not (enNo). |
[out] double | *pdAverageLengthOfStay | The average length of stay of the currently focused service |
[out] double | *pdCostWeight | The cost weight of the currently focused service |
[out] double | *pdTP | The tax point (TP) of the currently focused service |
[out] long | *plLowTrimPoint | The low trim point (LTP) of the currently focused service |
[out] long | *plHightTrimPoint | The high trim point (HTTP) of the currently focused service |
[out] long | *plHightTrimPoint2 | The high trim point 2 (HTP2) of the currently focused service |
[out] DATE | *pdValidTo | The validity end date of the currently focused service |
[out] DATE | *pdValidFrom | The validity start date of the currently focused service |
[out,retval] VARIANT_BOOL | *pbStatus | Boolean return status |
space |


  • ISearch
  • MoveFirst

ISearch::MoveFirst method |  |  | space
Moves the record pointer to the first record in the selection list and makes that record the current service record. If the action could not be performed false will be returned. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ ISearch/MoveFirst
[JSON input data] | pISearch: | longValue, //interface address
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT MoveFirst( | VARIANT_BOOL | *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
Calling argument description |  |  |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • ISearch
  • MoveLast

ISearch::MoveLast method |  |  | space
Moves to the last record in the selection list and makes that record the current service record. If the action could not be performed false will be returned. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ ISearch/MoveLast
[JSON input data] | pISearch: | longValue, //interface address
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT MoveLast( | VARIANT_BOOL | *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
Calling argument description |  |  |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • ISearch
  • MoveNext

ISearch::MoveNext method |  |  | space
Moves to the next record in the selection list and makes that record the current service record. If the action could not be performed false will be returned. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ ISearch/MoveNext
[JSON input data] | pISearch: | longValue, //interface address
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT MoveNext( | VARIANT_BOOL | *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
Calling argument description |  |  |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • ISearch
  • MovePrevious

ISearch::MovePrevious method |  |  | space
Moves to the previous record in the selection list object and makes that record the current service record. If the action could not be performed false will be returned. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ ISearch/MovePrevious
[JSON input data] | pISearch: | longValue, //interface address
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT MovePrevious( | VARIANT_BOOL | *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
Calling argument description |  |  |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • ISearch
  • PutAbsolutePosition

ISearch::PutAbsolutePosition method |  |  | space
Positions the record pointer at the specified absolute position in the selection list. This method can be useful for implementing virtual selection lists. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ ISearch/PutAbsolutePosition
[JSON input data] | pISearch: lID: | longValue, //interface address longValue
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT PutAbsolutePosition( | long VARIANT_BOOL | lID, *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
Calling argument description |  |  |
[in] long | lID | The ID of the current service record |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • ISearch
  • SearchCode

ISearch::SearchCode method |  |  | space
This method searches for services by specifying code/code pattern |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ ISearch/SearchCode
[JSON input data] | pISearch: bstrTariffType: dDate: bstrCode: | longValue, //interface address "utf8StringValue", variantDateValue | "stringISODateValue", "utf8StringValue"
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT SearchCode( | BSTR DATE BSTR VARIANT_BOOL | bstrTariffType, dDate, bstrCode, *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
Calling argument description |  |  |
[in] BSTR | bstrTariffType | The tariff type to use in the query |
[in] DATE | dDate | The date to use for the query. Valid (and returned) records must have a validity date range that does include the given date! Supply a DATE = 0 to turn off the date range check! |
[in] BSTR | bstrCode | Query string that is used for searching in the code portion of the tariff catalog (cf. properties WildCard and WildCharacter for using wildcards). swissDRG patch There are 2 service providers in swissDRG -hospitals and maternity clinics- using the same service code space! The hospital provider is the default space and maternity clinics are chosen by prepending maternityClinic: to the query term. |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • ISearch
  • SearchMDC

ISearch::SearchMDC method |  |  | space
This method searches for services by specifying a MDC code/MDC code pattern |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ ISearch/SearchMDC
[JSON input data] | pISearch: bstrTariffType: dDate: bstrCode: | longValue, //interface address "utf8StringValue", variantDateValue | "stringISODateValue", "utf8StringValue"
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT SearchMDC( | BSTR DATE BSTR VARIANT_BOOL | bstrTariffType, dDate, bstrCode, *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
Calling argument description |  |  |
[in] BSTR | bstrTariffType | The tariff type to use in the query |
[in] DATE | dDate | The date to use for the query. Valid (and returned) records must have a validity date range that does include the given date! Supply a DATE = 0 to turn off the date range check! |
[in] BSTR | bstrCode | Query string that is used for searching in the MDC code portion of the tariff catalog (cf. properties WildCard and WildCharacter for using wildcards). swissDRG patch There are 2 service providers in swissDRG -hospitals and maternity clinics- using the same service code space! The hospital provider is the default space and maternity clinics are chosen by prepending maternityClinic: to the query term. |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • ISearch
  • SearchName

ISearch::SearchName method |  |  | space
This method searches for services by specifying a name/name pattern |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ ISearch/SearchName
[JSON input data] | pISearch: bstrTariffType: dDate: bstrName: | longValue, //interface address "utf8StringValue", variantDateValue | "stringISODateValue", "utf8StringValue"
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT SearchName( | BSTR DATE BSTR VARIANT_BOOL | bstrTariffType, dDate, bstrName, *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
Calling argument description |  |  |
[in] BSTR | bstrTariffType | The tariff type to use in the query |
[in] DATE | dDate | The date to use for the query. Valid (and returned) records must have a validity date range that does include the given date! Supply a DATE = 0 to turn off the date range check! |
[in] BSTR | bstrName | Query string that is used for searching in the name portion of the tariff catalog (cf. properties WildCard and WildCharacter for using wildcards). swissDRG patch There are 2 service providers in swissDRG -hospitals and maternity clinics- using the same service code space! The hospital provider is the default space and maternity clinics are chosen by prepending maternityClinic: to the query term. |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • ISearch
  • AgeRestriction

ISearch::AgeRestriction property | space
Denotes whether the selected service record has a 'age' restriction (enYes) or not (enNo).

If enYes then the allowed interval [lDaysFrom, lDaysTo] in days is returned.
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetAgeRestriction?param
[param] pISearch= longValue
[JSON result data] plDaysFrom:
plDaysTo:
peAgeRestriction: 		longValue,
longValue,
longValue
[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
C/C++ calling syntax
[get] HRESULT AgeRestriction( long *plDaysFrom,
long *plDaysTo,
YesNoType *peAgeRestriction );
[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
Calling argument description
[out] long *plDaysFrom The minimum age of the patient in days allowed.
The variable is undefined if the property returns enNo!
[out] long *plDaysTo The maximum age of the patient in days allowed
The variable is undefined if the property returns enNo!
[out,retval] YesNoType | *peAgeRestriction | Boolean that defines if the current service has an age restriction (enYes) or not (enNo)
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • YesNoType *GetAgeRestriction( long *plDaysFrom, long *plDaysTo);
space


  • ISearch
  • AverageLengthOfStay

ISearch::AverageLengthOfStay property | space
The average length of stay of the selected service record

Reinterpretation in case of tariff 030: TarPSY:
LOSmax: the LOS where the last explicit costWeight is defined. This means, that any LOS > LOSmax must use the costWeight(LOSmax).
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetAverageLengthOfStay?param
[param] pISearch= longValue
[JSON result data] pdAverageLengthOfStay: doubleValue
[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
C/C++ calling syntax
[get] HRESULT | AverageLengthOfStay( double *pdAverageLengthOfStay );
[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
Calling argument description
[out,retval] double | *pdAverageLengthOfStay | The average length of stay of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • double *GetAverageLengthOfStay(void);
space


  • ISearch
  • Billable

ISearch::Billable property | space
The billable attribute denotes whether the selected service record is billable (enYes) or not (enNo)
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetBillable?param
[param] pISearch= longValue
[JSON result data] peBillable: longValue
[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
C/C++ calling syntax
[get] HRESULT | Billable( YesNoType *peBillable );
[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
Calling argument description
[out,retval] YesNoType | *peBillable | Boolean that defines if the current service is billable (enYes) or not (enNo)
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • YesNoType *GetBillable(void);
space


  • ISearch
  • Code

ISearch::Code property | space
The DRG code of the selected service record
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetCode?param
[param] pISearch= longValue
[JSON result data] pbstrCode: "utf8StringValue"
[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
C/C++ calling syntax
[get] HRESULT | Code( BSTR *pbstrCode );
[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
Calling argument description
[out,retval] BSTR | *pbstrCode | The code of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • BSTR *GetCode(void);
space


  • ISearch
  • CodeType

ISearch::CodeType property | space
The DRG code type of the selected service record

All swissDRG codes of type "other" are counted as enCodeUndefined.
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetCodeType?param
[param] pISearch= longValue
[JSON result data] peCodeType: longValue
[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
C/C++ calling syntax
[get] HRESULT | CodeType( CodeType *peCodeType );
[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
Calling argument description
[out,retval] CodeType | *peCodeType | the code type of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • CodeType *GetCodeType(void);
space


  • ISearch
  • CostWeight

ISearch::CostWeight property | space
The cost weight of the selected service record

Reinterpretation in case of tariff 030: TarPSY:
costWeight(LOS=1): cost weight for the first day.

To get a costWeight for a different LOSx, calculate TP(LOSx)/LOSx
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetCostWeight?param
[param] pISearch= longValue
[JSON result data] pdCostWeight: doubleValue
[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
C/C++ calling syntax
[get] HRESULT | CostWeight( double *pdCostWeight );
[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
Calling argument description
[out,retval] double | *pdCostWeight | The cost weight of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • double *GetCostWeight(void);
space


  • ISearch
  • DestructSearch

ISearch::DestructSearch property |  |  | space
This property has a Restful Webservice representation only! Destructs/invalidates this IValidate interface instance. The counterpart property to generate an ISearch interface instance is IDRGValidator::GetCreateSearch. |  |  |
space
Restful webservice calling syntax |  |  |
[PUT] | /baseURL/ ISearch/PutDestructSearch
[JSON input data] | pISearch: | longValue, //interface address
[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
Remarks |  |  |
This property has a Restful Webservice representation only! |  |  |
space |


  • ISearch
  • GenderRestriction

ISearch::GenderRestriction property | space
Denotes whether the selected service record has a 'gender' restriction (enYes) or not (enNo).

If enYes then eSex is the allowed gender
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetGenderRestriction?param
[param] pISearch= longValue
[JSON result data] peSex:
peGenderRestriction: 		longValue,
longValue
[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
C/C++ calling syntax
[get] HRESULT GenderRestriction( SexType *peSex,
YesNoType *peGenderRestriction );
[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
Calling argument description
[out] SexType *peSex The allowed gender.
The variable is undefined if the property returns enNo!
[out,retval] YesNoType | *peGenderRestriction | Boolean that defines if the current service has a gender restriction (enYes) or not (enNo)
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • YesNoType *GetGenderRestriction( SexType *peSex);
space


  • ISearch
  • HighTrimPoint

ISearch::HighTrimPoint property | space
The high trim point (HTP) of the selected service record

Reinterpretation in case of tariff 030: TarPSY:
Is set to 0, as there is no HighTrimPoint equivalent in TarPsy
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetHighTrimPoint?param
[param] pISearch= longValue
[JSON result data] plHighTrimPoint: longValue
[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
C/C++ calling syntax
[get] HRESULT | HighTrimPoint( long *plHighTrimPoint );
[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
Calling argument description
[out,retval] long | *plHighTrimPoint | The high trim point of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • long *GetHighTrimPoint(void);
space


  • ISearch
  • HighTrimPoint2

ISearch::HighTrimPoint2 property | space
The high trim point 2 (HTP2) of the selected service record.
Note that not all APDRG tariff types have a HTP2. In such a case -1 is returned.

swissDRG patch
swissDRG does not have a HTP2! Therefore, the "exception to readmission" information is supplied via this property: -1 = no exception; 1 = exception

Reinterpretation in case of tariff 030: TarPSY:
Is set to 0, as there is no HighTrimPoint2 equivalent in TarPsy
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetHighTrimPoint2?param
[param] pISearch= longValue
[JSON result data] plHighTrimPoint2: longValue
[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
C/C++ calling syntax
[get] HRESULT | HighTrimPoint2( long *plHighTrimPoint2 );
[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
Calling argument description
[out,retval] long | *plHighTrimPoint2 | The hight trim point 2 of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • long *GetHighTrimPoint2(void);
space


  • ISearch
  • LOSRestriction

ISearch::LOSRestriction property | space
Denotes whether the selected service record has a 'length of stay' restriction (enYes) or not (enNo).
If enYes then lLengthOfStay is the maximum length of stay in days allowed
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetLOSRestriction?param
[param] pISearch= longValue
[JSON result data] plLengthOfStay:
peLOSRestriction: 		longValue,
longValue
[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
C/C++ calling syntax
[get] HRESULT LOSRestriction( long *plLengthOfStay,
YesNoType *peLOSRestriction );
[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
Calling argument description
[out] long *plLengthOfStay The maximum length of stay in days allowed
The variable is undefined if the property returns enNo!
[out,retval] YesNoType | *peLOSRestriction | Boolean defining if the current service has a 'length of stay' restriction (enYes) or not (enNo)
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • YesNoType *GetLOSRestriction( long *plLengthOfStay);
space


  • ISearch
  • LowTrimPoint

ISearch::LowTrimPoint property | space
The low trim point (LTP) of the selected service record

Reinterpretation in case of tariff 030: TarPSY:
Is set to 0, as there is no LowTrimPoint equivalent in TarPsy
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetLowTrimPoint?param
[param] pISearch= longValue
[JSON result data] plLowTrimPoint: longValue
[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
C/C++ calling syntax
[get] HRESULT | LowTrimPoint( long *plLowTrimPoint );
[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
Calling argument description
[out,retval] long | *plLowTrimPoint | The low trim point of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • long *GetLowTrimPoint(void);
space


  • ISearch
  • MDC

ISearch::MDC property | space
The Major Diagnostic Category (MDC) code of the selected service record

Note that -1 is returned if the selected DRG record does not belong to a defined MDC (e.g. swissDRG additions or Swiss Payment Group records of APDRG).
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetMDC?param
[param] pISearch= longValue
[JSON result data] pbstrMDC: "utf8StringValue"
[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
C/C++ calling syntax
[get] HRESULT | MDC( BSTR *pbstrMDC );
[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
Calling argument description
[out,retval] BSTR | *pbstrMDC | The MDC code of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • BSTR *GetMDC(void);
space


  • ISearch
  • Name

ISearch::Name property | space
The name of the selected service record
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetName?param
[param] pISearch= longValue
[JSON result data] pbstrName: "utf8StringValue"
[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
C/C++ calling syntax
[get] HRESULT | Name( BSTR *pbstrName );
[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
Calling argument description
[out,retval] BSTR | *pbstrName | The name of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • BSTR *GetName(void);
space


  • ISearch
  • ServiceType

ISearch::ServiceType property | space
The DRG service type of the selected service record

Note, that the interpretation of the serviceType changes for SwissDRG and APDRG!
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetServiceType?param
[param] pISearch= longValue
[JSON result data] peServiceType: longValue
[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
C/C++ calling syntax
[get] HRESULT | ServiceType( ServiceType *peServiceType );
[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
Calling argument description
[out,retval] ServiceType | *peServiceType | The service type of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • ServiceType *GetServiceType(void);
space


  • ISearch
  • TariffType

ISearch::TariffType property | space
The tariff type the selected service record belongs to
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetTariffType?param
[param] pISearch= longValue
[JSON result data] pbstrTariffType: "utf8StringValue"
[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
C/C++ calling syntax
[get] HRESULT | TariffType( BSTR *pbstrTariffType );
[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
Calling argument description
[out,retval] BSTR | *pbstrTariffType | The tariff type of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • BSTR *GetTariffType(void);
space


  • ISearch
  • TP

ISearch::TP property | space
Tax points of the selected service record.

Note that this is the "effective cost weight" calculated as a function of various factors (length of stay, average length of stay, etc.) and will be used as tax point TP when invoicing the service record
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetTP?param
[param] pISearch=
lLengthOfStay= 		longValue&
longValue
[JSON result data] pdTP: doubleValue
[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
C/C++ calling syntax
[get] HRESULT TP( long lLengthOfStay,
double *pdTP );
[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
Calling argument description
[in] long lLengthOfStay The length of stay (LOS) to use for the calculation

swissDRG patch
A negative LOS signals to calculated the effective cost weight for the relocation case of the given |LOS|.
[out,retval] double | *pdTP | The effective cost weight aka tax point TP
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • double *GetTP( long lLengthOfStay);
space


  • ISearch
  • ValidFrom

ISearch::ValidFrom property | space
The validity start date of the selected service record
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetValidFrom?param
[param] pISearch= longValue
[JSON result data] pdValidFrom: "stringISODateValue"
[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
C/C++ calling syntax
[get] HRESULT | ValidFrom( DATE *pdValidFrom );
[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
Calling argument description
[out,retval] DATE | *pdValidFrom | The validity start of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • DATE *GetValidFrom(void);
space


  • ISearch
  • ValidTo

ISearch::ValidTo property | space
The validity end date of the selected service record
space
Restful webservice calling syntax
[GET] | /baseURL/ ISearch/GetValidTo?param
[param] pISearch= longValue
[JSON result data] pdValidTo: "stringISODateValue"
[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
C/C++ calling syntax
[get] HRESULT | ValidTo( DATE *pdValidTo );
[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
Calling argument description
[out,retval] DATE | *pdValidTo | The validity end of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • DATE *GetValidTo(void);
space


  • IValidate

IValidate interface |  | V1.00/27 Jul 2007
The IValidate interface checks whether the supplied service data conform to the DRG rules. In case of a conflict with another service or by internal rules, the service will be rejected. Textual information explaining why the code was rejected can be retrieved, in order to provide appropriate feedback to the user. |  | space
space
Methods |  | 9 methods
AddService | Adds a new service which will be validated against all previously added services of the same session |
CalculateSum | Calculate the sum of all services which have been added through the AddService method taking into account previously set pseudo codes. |
GetAbortInfo | Get the information indicating why the service could not be added. |
GetService | Method for collecting the service record data of the currently focused service in one call without the necessity to call the appropriate properties of this interface |
Initialize | Initializes the validation, clears all previously added records |
MoveFirst | Positions the record pointer at the first record in the result record set |
MoveLast | Positions the record pointer at the last record in the result record set |
MoveNext | Positions the record pointer at the next record in the result record set |
MovePrevious | Positions the record pointer at the previous record in the result record set |
space
Properties |  | 15 properties
[get] Amount | The amount for the service in CHF as ( Quantity * TP * TPValue ) |
[get] Billable | The billable attribute denotes whether the selected service record is billable (enYes) or not (enNo) |
[get] Code | The DRG code of the service record |
[get] CostWeight | The cost weight of the selected service record |
[get] Date | Date of the service record |
[put] DestructValidate | Destructs/invalidates this IValidate interface instance |
[get] Hook | The hook of the selected service (external ID) |
[get] ID | The internal ID of the selected service record |
[get] IgnoreValidate | Flag indicating whether the validation was ignored or not |
[get] IntervalType | The interval type based on the length of stay (LOS) supplied by the IntervalType enumeration |
[get] LengthOfStay | The length of stay (LOS) used for calculation the TP value |
[get] Name | The name of the service record. |
[get] Quantity | The quantity of the service record |
[get] TP | Tax points (TP) of the selected service record taking into account previously set pseudo codes |
[get] TPValue | Tax point value (TPV) of the service |
space |


  • IValidate
  • AddService

IValidate::AddService method | space
Adds a new service which will be validated against all previously added services of the same session. If the code supplied passes all validations a VARIANT_TRUE value is returned. If the code was not accepted VARIANT_FALSE is returned and the variable plStatus contains the error code.

swissDRG patch
There are 2 service providers in swissDRG -hospitals and maternity clinics- using the same service code space! Furthermore,
swissDRG distinguishes between normal and relocation cases. For being able to separate these cases, pseudo services have been defined
consisting of a tariff type, a date and a pseudo code! Such a pseudo code consists of:
setParameter(cmd=value)
where the whole pseudo code is case and whitespace insensitive. A pseudo code is active until the next call of the Initialize method and is then reset to the default values.

The following pseudo codes are defined for swissDRG:
  1. setParameter(providerType=value), with value = { hospital | maternityClinic }, and hospital as default.
    This command set the focus to swissDRG service records for hospitals or maternity clinics, respectively.
  2. setParameter(relocation=value), with value = { on | off }, and off as default.
    This command calculates the TP for the normal (off) or relocation (on) case.
The return value of AddService is S_OK for successfully set a pseudo value. However, do not call the properties as these are undefined in such a case
space
Restful webservice calling syntax
[POST] | /baseURL/ IValidate/AddService
[JSON input data] pIValidate:
ePatientSex:
dPatientBirthdate:
lLengthOfStay:
bstrTariffType:
bstrCode:
dQuantity:
dTP:
dTPValue:
dDate:
eIgnoreValidate:
lHook: 		longValue, //interface address
longValue,
variantDateValue | "stringISODateValue",
longValue,
"utf8StringValue",
"utf8StringValue",
doubleValue,
doubleValue,
doubleValue,
variantDateValue | "stringISODateValue",
longValue,
longValue
[JSON result data] plStatus:
pbStatus: 		longValue,
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
C/C++ calling syntax
HRESULT AddService( long
SexType
DATE
long
BSTR
BSTR
double
double
double
DATE
YesNoType
long
VARIANT_BOOL 		*plStatus,
ePatientSex,
dPatientBirthdate,
lLengthOfStay,
bstrTariffType,
bstrCode,
dQuantity,
dTP,
dTPValue,
dDate,
eIgnoreValidate,
lHook,
*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
Calling argument description
[out] long *plStatus The principal validation status
  • =0 is returned for success
  • >0 indicates that a validation rule was not fulfilled. Use the GetAbortInfo to get an error description string.
  • <0 indicates that the service was not added (cf. the AbortValidateType enumeration for possible codes).
[in] SexType | ePatientSex | Gender of the patient
[in] DATE | dPatientBirthdate | Birth date of the patient
[in] long | lLengthOfStay | The effective length of stay to use for calculation the TP value
[in] BSTR bstrTariffType Tariff catalog to use.
Use the methods drgValidator::GetFirstTariff/drgValidator::GetNextTariff to iterate over all covered DRG tariff catalogs
[in] BSTR bstrCode Code of the service

swissDRG patch
Pseudo codes of the form setParameter(cmd=value) can be used to alter the default behavior.
[in] double | dQuantity | Quantity of the service
[in] double dTP Tax point TP of the service (aka the effective cost weight).

A zero value will be auto-expanded to the correct TP by the validator if and only if the TP can be calculated. That is for unweighted swissDRG positions or cost-undefined swissDRG additions a TP value must be supplied.
[in] double | dTPValue | Tax point value TPV of the service (aka base rate)
[in] DATE | dDate | Date of the service to ensure a valid date range of the service record itself
[in] YesNoType eIgnoreValidate Flag indicating whether the validation should be ignored or not.
To turn off the validation might be useful in the situation when a service should be added even if the validation failed due to a special agreement with the insurance or patient.
[in] long | lHook | External hook. The software house can provide e.g. a record ID of the service to identify this service later on when reading data back.
[out,retval] VARIANT_BOOL *pbStatus Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name).
In the later case check for possible errors with the GetAbortInfo method.
space


  • IValidate
  • CalculateSum

IValidate::CalculateSum method |  |  | space
Calculate the sum of all services which have been added through the AddService method taking into account previously set pseudo codes. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IValidate/CalculateSum
[JSON input data] | pIValidate: | longValue, //interface address
[JSON result data] | pdTotal: pbStatus: | doubleValue, 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
C/C++ calling syntax |  |  |
HRESULT CalculateSum( | double VARIANT_BOOL | *pdTotal, *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
Calling argument description |  |  |
[out] double | *pdTotal | Total of all services in CHF. |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IValidate
  • GetAbortInfo

IValidate::GetAbortInfo method |  |  | space
Get the information indicating why the service could not be added. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IValidate/GetAbortInfo
[JSON input data] | pIValidate: | longValue, //interface address
[JSON result data] | pbstrAbort: pbStatus: | "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
C/C++ calling syntax |  |  |
HRESULT GetAbortInfo( | BSTR VARIANT_BOOL | *pbstrAbort, *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
Calling argument description |  |  |
[out] BSTR | *pbstrAbort | Abort information string. If the abort string is empty then there is no error condition - S_FALSE was set (e.g. in an iterator to signal end_of_data) |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IValidate
  • GetService

IValidate::GetService method |  |  | space
This method has a Restful Webservice representation only! Method for collecting the service record data of the currently focused service in one call without the necessity to call the appropriate properties of this interface. The counterpart method to add services is IDRGValidator::AddService |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IValidate/GetService
[JSON input data] | pIValidate: | longValue, //interface address
[JSON result data] | plID: pbstrCode: pbstrName: pdQuantity: pdTP: pdTPValue: pdDate: peIgnoreValidate: plHook: plLengthOfStay: peIntervalType: peBillable: pdCostWeight: pdAmount: pbStatus: | longValue, "utf8StringValue", "utf8StringValue", doubleValue, doubleValue, doubleValue, "stringISODateValue", longValue, longValue, longValue, longValue, longValue, doubleValue, doubleValue, 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
Calling argument description |  |  |
[out] long | *plID | The internal ID of the currently focused service |
[out] BSTR | *pbstrCode | The code of the currently focused service |
[out] BSTR | *pbstrName | The name of the currently focused service |
[out] double | *pdQuantity | The quantity of the currently focused service |
[out] double | *pdTP | The tax point (TP) of the currently focused service |
[out] double | *pdTPValue | The tax point value (TPV) of the currently focused service |
[out] DATE | *pdDate | The treatment date of the currently focused service |
[out] YesNoType | *peIgnoreValidate | The flag indicating whether the currently focused service was ignored in validation (enNo) or not (enYes). |
[out] long | *plHook | The hook of the currently focused service |
[out] long | *plLengthOfStay | The length of stay used for the currently focused service |
[out] IntervalType | *peIntervalType | The type of interval defined for the currently focused service |
[out] YesNoType | *peBillable | The flag indicating whether the currently focused service is billable (enyes) or not (enNo). |
[out] double | *pdCostWeight | The cost weight used for the currently focused service |
[out] double | *pdAmount | The amount in CHF of the currently focused service calculated as ( Amount = Quantity * TP * TPValue ) |
[out,retval] VARIANT_BOOL | *pbStatus | Boolean return status |
space |


  • IValidate
  • Initialize

IValidate::Initialize method |  |  | space
Initializes the validation, clears all previously added records The previously defined pseudo codes are reset to their default values - cf. AddService |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IValidate/Initialize
[JSON input data] | pIValidate: | longValue, //interface address
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT Initialize( | VARIANT_BOOL | *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
Calling argument description |  |  |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IValidate
  • MoveFirst

IValidate::MoveFirst method |  |  | space
Positions the record pointer at the first record in the result record set. If the action could not be performed false will be returned. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IValidate/MoveFirst
[JSON input data] | pIValidate: | longValue, //interface address
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT MoveFirst( | VARIANT_BOOL | *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
Calling argument description |  |  |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IValidate
  • MoveLast

IValidate::MoveLast method |  |  | space
Positions the record pointer at the last record in the result record set. If the action could not be performed false will be returned. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IValidate/MoveLast
[JSON input data] | pIValidate: | longValue, //interface address
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT MoveLast( | VARIANT_BOOL | *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
Calling argument description |  |  |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IValidate
  • MoveNext

IValidate::MoveNext method |  |  | space
Positions the record pointer at the next record in the result record set. If the action could not be performed false will be returned. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IValidate/MoveNext
[JSON input data] | pIValidate: | longValue, //interface address
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT MoveNext( | VARIANT_BOOL | *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
Calling argument description |  |  |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IValidate
  • MovePrevious

IValidate::MovePrevious method |  |  | space
Positions the record pointer at the previous record in the result record set. If the action could not be performed false will be returned. |  |  |
space
Restful webservice calling syntax |  |  |
[POST] | /baseURL/ IValidate/MovePrevious
[JSON input data] | pIValidate: | longValue, //interface address
[JSON result data] | pbStatus: | 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
C/C++ calling syntax |  |  |
HRESULT MovePrevious( | VARIANT_BOOL | *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
Calling argument description |  |  |
[out,retval] VARIANT_BOOL | *pbStatus | Return status. VARIANT_TRUE means S_OK, VARIANT_FALSE means S_FALSE (e.g. in an iterator) or an error (E_name). In the later case check for possible errors with the GetAbortInfo method. |
space |


  • IValidate
  • Amount

IValidate::Amount property | space
The amount for the service in CHF as ( Quantity * TP * TPValue )
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetAmount?param
[param] pIValidate= longValue
[JSON result data] pdAmount: doubleValue
[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
C/C++ calling syntax
[get] HRESULT | Amount( double *pdAmount );
[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
Calling argument description
[out,retval] double | *pdAmount | The amount of the service in CHF
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • double *GetAmount(void);
space


  • IValidate
  • Billable

IValidate::Billable property | space
The billable attribute denotes whether the selected service record is billable (enYes) or not (enNo)
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetBillable?param
[param] pIValidate= longValue
[JSON result data] peBillable: longValue
[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
C/C++ calling syntax
[get] HRESULT | Billable( YesNoType *peBillable );
[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
Calling argument description
[out,retval] YesNoType | *peBillable | Boolean that defines if the current service is billable (enYes) or not (enNo)
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • YesNoType *GetBillable(void);
space


  • IValidate
  • Code

IValidate::Code property | space
The DRG code of the service record
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetCode?param
[param] pIValidate= longValue
[JSON result data] pbstrCode: "utf8StringValue"
[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
C/C++ calling syntax
[get] HRESULT | Code( BSTR *pbstrCode );
[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
Calling argument description
[out,retval] BSTR | *pbstrCode | The code of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • BSTR *GetCode(void);
space


  • IValidate
  • CostWeight

IValidate::CostWeight property | space
The cost weight of the selected service record
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetCostWeight?param
[param] pIValidate= longValue
[JSON result data] pdCostWeight: doubleValue
[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
C/C++ calling syntax
[get] HRESULT | CostWeight( double *pdCostWeight );
[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
Calling argument description
[out,retval] double | *pdCostWeight | The cost weight of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • double *GetCostWeight(void);
space


  • IValidate
  • Date

IValidate::Date property | space
Date of the service record
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetDate?param
[param] pIValidate= longValue
[JSON result data] pdDate: doubleValue
[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
C/C++ calling syntax
[get] HRESULT | Date( double *pdDate );
[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
Calling argument description
[out,retval] double | *pdDate | The defined date of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • double *GetDate(void);
space


  • IValidate
  • DestructValidate

IValidate::DestructValidate property |  |  | space
This property has a Restful Webservice representation only! Destructs/invalidates this IValidate interface instance. The counterpart property to generate an IValidate interface instance is IDRGValidator::GetCreateValidate. |  |  |
space
Restful webservice calling syntax |  |  |
[PUT] | /baseURL/ IValidate/PutDestructValidate
[JSON input data] | pIValidate: | longValue, //interface address
[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
Remarks |  |  |
This property has a Restful Webservice representation only! |  |  |
space |


  • IValidate
  • Hook

IValidate::Hook property | space
The hook of the selected service (external ID)
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetHook?param
[param] pIValidate= longValue
[JSON result data] plHook: longValue
[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
C/C++ calling syntax
[get] HRESULT | Hook( long *plHook );
[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
Calling argument description
[out,retval] long | *plHook | The hook of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • long *GetHook(void);
space


  • IValidate
  • ID

IValidate::ID property | space
The internal ID of the selected service record
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetID?param
[param] pIValidate= longValue
[JSON result data] plID: longValue
[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
C/C++ calling syntax
[get] HRESULT | ID( long *plID );
[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
Calling argument description
[out,retval] long | *plID | The internal ID of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • long *GetID(void);
space


  • IValidate
  • IgnoreValidate

IValidate::IgnoreValidate property | space
Flag indicating whether the validation was ignored or not
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetIgnoreValidate?param
[param] pIValidate= longValue
[JSON result data] peIgnoreValidate: longValue
[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
C/C++ calling syntax
[get] HRESULT | IgnoreValidate( YesNoType *peIgnoreValidate );
[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
Calling argument description
[out,retval] YesNoType | *peIgnoreValidate | Boolean that defines if the current service has a 'ignore validate' status (enYes) or not (enNo)
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • YesNoType *GetIgnoreValidate(void);
space


  • IValidate
  • IntervalType

IValidate::IntervalType property | space
The interval type based on the length of stay (LOS) supplied by the IntervalType enumeration.

Note, that an interval type enIntervalInlier is set for any tariff that does not have an interval concept
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetIntervalType?param
[param] pIValidate= longValue
[JSON result data] peIntervalType: longValue
[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
C/C++ calling syntax
[get] HRESULT | IntervalType( IntervalType *peIntervalType );
[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
Calling argument description
[out,retval] IntervalType | *peIntervalType | The interval type of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • IntervalType *GetIntervalType(void);
space


  • IValidate
  • LengthOfStay

IValidate::LengthOfStay property | space
The length of stay (LOS) used for calculation the TP value
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetLengthOfStay?param
[param] pIValidate= longValue
[JSON result data] plLengthOfStay: longValue
[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
C/C++ calling syntax
[get] HRESULT | LengthOfStay( long *plLengthOfStay );
[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
Calling argument description
[out,retval] long | *plLengthOfStay | The length of stay of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • long *GetLengthOfStay(void);
space


  • IValidate
  • Name

IValidate::Name property | space
The name of the service record.
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetName?param
[param] pIValidate= longValue
[JSON result data] pbstrName: "utf8StringValue"
[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
C/C++ calling syntax
[get] HRESULT | Name( BSTR *pbstrName );
[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
Calling argument description
[out,retval] BSTR | *pbstrName | The name of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • BSTR *GetName(void);
space


  • IValidate
  • Quantity

IValidate::Quantity property | space
The quantity of the service record
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetQuantity?param
[param] pIValidate= longValue
[JSON result data] pdQuantity: doubleValue
[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
C/C++ calling syntax
[get] HRESULT | Quantity( double *pdQuantity );
[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
Calling argument description
[out,retval] double | *pdQuantity | The quantity of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • double *GetQuantity(void);
space


  • IValidate
  • TP

IValidate::TP property | space
Tax points (TP) of the selected service record taking into account previously set pseudo codes.

Note that this is the "effective cost weight" calculated as a function of various factors (length of stay, average length of stay, etc.) and will be used when invoicing the service record.
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetTP?param
[param] pIValidate= longValue
[JSON result data] pdTP: doubleValue
[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
C/C++ calling syntax
[get] HRESULT | TP( double *pdTP );
[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
Calling argument description
[out,retval] double | *pdTP | The effective cost weight aka tax point TP
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • double *GetTP(void);
space


  • IValidate
  • TPValue

IValidate::TPValue property | space
Tax point value (TPV) of the service

Note that this a synonym for the base rate and must be supplied by the customer.
space
Restful webservice calling syntax
[GET] | /baseURL/ IValidate/GetTPValue?param
[param] pIValidate= longValue
[JSON result data] pdTPValue: doubleValue
[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
C/C++ calling syntax
[get] HRESULT | TPValue( double *pdTPValue );
[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
Calling argument description
[out,retval] double | *pdTPValue | The tax point value TPV (aka baserate) of the current service
space
Remarks
If SmartPointers are used than the function names and calls are rewritten by Microsoft into the form
  • double *GetTPValue(void);
space


  • Type definitions

Builtin, composite & enumeration types |  | V1.00/27 Jul 2007
The following list shows ans defines all used data types either basic builtin, composite or enumeration types that are used in the interface of the ATL COM module. |  | space
space
Data types |  | 15 types
[enumeration] AbortValidateType | Enumerates the defined reasons for an aborted validation attempt |
[builtin] BSTR | A BSTR, known as basic string or binary string, is a pointer to a wide character string used by Automation data manipulation functions |
[enumeration] CodeType | Enumerates the defined code types |
[builtin] DATE | A value denoting a date and time was specified |
[builtin] double | An 8-byte IEEE real value |
[builtin] HRESULT | The HRESULT data type is a 32-bit value that is used to describe an error or warning |
[enumeration] IntervalType | Enumerates the defined interval types based on the given effective length of stay |
[builtin] ISearch | ISearch interface |
[builtin] IValidate | IValidate interface |
[enumeration] LanguageType | Enumerates all supported languages |
[builtin] long | A 4-byte integer value |
[enumeration] ServiceType | Enumerates the defined service types |
[enumeration] SexType | Enumerates the defined gender categories |
[builtin] VARIANT_BOOL | A 16 bit Boolean (True/False) value was specified |
[enumeration] YesNoType | Boolean enumerator |
space |


  • Type definitions
  • AbortValidateType

AbortValidateType enumeration type |  |
Enumerates the defined reasons for an aborted validation attempt |  | space
space
Set of enumeration values |  | 11 elements
enDatabaseNotOpen: 101 | The database is not open. |
enTariffNotFound: 300 | Supplied tariff not found |
enServiceNotFound: 301 | No service record found. |
enWrongTP: 401 | Wrong tax point specified. |
enTPCalculationErr: 402 | Tax point can not be calculated |
enServiceRestriction: 407 | Number of services must be 1 |
enQuantityRestriction: 408 | Quantity must be 1 |
enLOSRestriction: 409 | 'Length of Stay' restriction is not satisfied by given LOS |
enGenderMaleRestriction: 410 | 'Male only' gender restriction is not satisfied by patient's gender |
enGenderFemaleRestriction: 411 | 'Female only' gender restriction is not satisfied by patient's gender |
enAgeRestriction: 412 | Age restriction is not satisfied by patient's age |
space


  • Type definitions
  • BSTR

BSTR type |
A BSTR, known as basic string or binary string, is a pointer to a wide character string used by Automation data manipulation functions. BSTRs are wide, double-byte (Unicode) strings on 32-bit Windows platforms. | space
space
space


  • Type definitions
  • CodeType

CodeType enumeration type |  |
Enumerates the defined code types |  | space
space
Set of enumeration values |  | 3 elements
enCodeUndefined: 0 | The code type is undefined or unknown. swissDRG patch All DRG codes of type "other" are counted as enCodeUndefined. |
enCodeMedical: 1 | The code is a medical code |
enCodeSurgical: 2 | The code is a surgical code |
space


  • Type definitions
  • DATE

DATE type |
A value denoting a date and time was specified. Dates are represented as double-precision numbers, where midnight, January 1, 1900 is 2.0, January 2, 1900 is 3.0, and so on. The value is passed in date. | space
space
space


  • Type definitions
  • double

double type |
An 8-byte IEEE real value | space
space
space


  • Type definitions
  • HRESULT

HRESULT type |
The HRESULT data type is a 32-bit value that is used to describe an error or warning | space
space
space


  • Type definitions
  • IntervalType

IntervalType enumeration type |  |
Enumerates the defined interval types based on the given effective length of stay |  | space
space
Set of enumeration values |  | 5 elements
enIntervalUndefined: 0 | Interval is undefined |
enIntervalOutlierLow: 1 | Low outlier interval |
enIntervalInlier: 2 | Inlier interval |
enIntervalOutlierHigh: 3 | 1st high outlier interval |
enIntervalOutlierHigh2: 4 | 2nd high outlier interval |
space


  • Type definitions
  • ISearch

ISearch type |
ISearch interface | space
space
space


  • Type definitions
  • IValidate

IValidate type |
IValidate interface | space
space
space


  • Type definitions
  • LanguageType

LanguageType enumeration type |  |
Enumerates all supported languages |  | space
space
Set of enumeration values |  | 3 elements
enGerman: 1 | German |
enFrench: 2 | French. |
enItalian: 3 | Italian |
space


  • Type definitions
  • long

long type |
A 4-byte integer value | space
space
space


  • Type definitions
  • ServiceType

ServiceType enumeration type
Enumerates the defined service types | space
space
Set of enumeration values | 3 elements
enServiceUndefined: 0 | The service type is undefined or unknown.
enServiceAPDRG: 1
  • swissDRG: The service is a swissDRG service
  • APDRG: The service is a All Patient Diagnosis Related Group service
enServiceSPG: 2
  • swissDRG-Additions: The service is an swissDRG addition service
  • APDRG: The service is a Swiss Payment Group (SPG) service
space


  • Type definitions
  • SexType

SexType enumeration type |  |
Enumerates the defined gender categories |  | space
space
Set of enumeration values |  | 2 elements
enMale: 0 | Male |
enFemale: 1 | Female |
space


  • Type definitions
  • VARIANT_BOOL

VARIANT_BOOL type |
A 16 bit Boolean (True/False) value was specified. A value of 0xFFFF (all bits 1) indicates True; a value of 0 (all bits 0) indicates False. No other values are valid. | space
space
space


  • Type definitions
  • YesNoType

YesNoType enumeration type |  |
Boolean enumerator |  | space
space
Set of enumeration values |  | 2 elements
enNo: 0 | No. |
enYes: 1 | Yes. |
space


 Sumex1 under a 64bit architecture...

All Sumex1 COM modules are written as 32bit managed C++ dll. As a consequence, a 64bit executable cannot load a 32bit COM dll into its process space due to the addressing differences.

Since some necessary underlying sub-modules are not available in a 64bit version, this problem must be addressed differently than by a 64bit compilation. As Microsoft suggests Sumex1 uses the out-of-process proxy approach where a 32bit COM server loads the 32bit COM dll into its process space and delegates each method call to the dll. Since a 32bit COM server exists in its own process space, the main 64bit process can handle the 64/32bit boundary without problems.

As a result, each 32bit Sumex1 COM dll has a 32bit COM server counterpart with the same name and an oopProxy prefix, e.g. oopProxyDrgValidator100.exe, where the prefix signifies the out-of-process proxy nature of the executable.

Any 64bit software now creates an instance of the 32bit oopProxy server and then calls the same methods and properties as with the 32bit COM dll. However, there is one crucial difference when using the oopProxy mechanism, namely the necessity to forcefully unload to the COM server at the end e.g. by using Marshal.ReleaseComObject() since the automatic garbage collection approach is too error prone.


 General use of the drgValidator ATL COM module

  • First create an instance of the drgValidator COM module.
  • Open the DRG database with the Open method from the IDRGValidator interface. Set the localization language (if it differs from the default setting of German) using the SetLanguage from the IDRGValidator interface. Loop over the supplied tariff catalogs by using IDRGValidator/GetFirstTariff/IDRGValidator/GetNextTariff
  • The following steps may then be performed, until the drgValidator module instance is released:
  • Let the user search for a code, name or MDC, respecively (see the Search functions of the ISearch interface).
  • Add the selected services with the AddService method from the IValidate interface.
  • Release the drgValidator COM module instance.


 Introduction, overview and usage of the Restful Webservice Server

The application drgValidatorServer100.exe is a Restful Webservice Server, that has the same interface methods/properties as the COM module drgValidator100.dll. This allows to create a programming semantically similar to the COM approach but under the Restful Webservice paradigm. Consequently, on the Restful Client side there are no prevailing dependencies on Microsoft platforms and/or on Microsoft resources such as the database technology. Of course, the installation location of the server software is still subject to these restrictions.

In the next section of this document, the installation, configuration and operation of drgValidatorServer100.exe will be addressed.

Installation, registration and parameterization:
By installing the installer object drgValidator100 the COM module drgValidator100.dll as well as the out-of-process proxy component oopDRGValidator100.exe is automatically installed/registered in the system. However, the drgValidatorServer100.exe must be installed manually as a service.
drgValidatorServer100.exe -help | Creates a help window with the the name and full version of the applicationb as well as the currently define Webservice Endpoint. Furthermore the complete list of command line switches is shown.
drgValidatorServer100.exe -install | Installs/registers the Restful Webservice Server as a service. Please take into account, that the installation must be performed under administrator privileges
drgValidatorServer100.exe -uninstall | Uninstalls the service component. Please take into account, that the uninstallation must be performed under administrator privileges
drgValidatorServer100.exe -setport X | Sets the port X as part of the Webservice Endpoint
Restful Webservice Endpoint:
Installing drgValidatorServer100.exe as a service activates the Restful Webservice Endpoint:
http://localhost:34778/drgValidatorServer100
which is subsumed as baseURL in subsequent the API documentation.

To run the webservice under a different URL or under https protocol, a permanent webservice target endpoint mapping is performed on the target system.
For example, under Apache, the following rewrite rule is defined:
<VirtualHost *:*>
    ProxyPreserveHost Off
    Header always set Access-Control-Allow-Origin "*"
    Header always set Access-Control-Max-Age "1000"
    Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"

    ProxyPass /drgValidator/100/ http://localhost:34778/drgValidatorServer100/
    ProxyPassReverse /drgValidator/100/ http://localhost:34778/drgValidatorServer100/
</VirtualHost>
Restful Webservice Operation:
The service may be modified after installation, for example to start under a different account, to extend the recovery properties or to change the startup type. Finally, this should be set to 'Automatic' or 'Automatic (Delayed start)' so that the service is automatically available after a system restart.
Remarks about programming:
In the rest of this document we will discuss programming of the Restful web service and the differences to the C/C++ programming of the classic COM component.

As already mentioned, Restful programming is analogous to C++ programming with the addition that each instance of an interface (including the main interface) is created via the corresponding GET function. For example, an instance of the main interface is created with:
baseURL/IDRGValidator/GetCreateDRGValidator | returns the instance address as JSON out{pIDRGValidator: longValue,...}
In every further call of a method or a property of the main interface this instance address must be included as part of the JSON-In. The termination/deletion of an instance must be done via the corresponding PUT Destruct property:
baseURL/IDRGValidator/PutDestructDRGValidator | with JSON-In{pIDRGValidator: longValue}, deletes the corresponding main instance AND all at that moment still active dependent subinstances (subinstances which have been generated by the explicit main instance).
It should be noted that the webserver drgValidatorServer100.exe performs an internal management of the generated instances and automatically deletes instances that have no activity for a defined period of 2 hours. no activity over a defined period of 2 hours. If after this action a rest call with such an instance is made, an error (HTTP Status >= 400) is generated and the instance address is marked as unknown.
Code snippet:
Minimal code snippet to query the version of the module and the associated database:
    http://localhost:34778/drgValidatorServer100/IDRGValidator/GetCreateDRGValidator
        returns JSON-Out{pIDRGValidator: 45467}

    http://localhost:34778/drgValidatorServer100/IDRGValidator/GetModuleVersion?pIDRGValidator=45467
        returns JSON-Out{pbstrModuleVersion: "1.00.008"}

    http://localhost:34778/drgValidatorServer100/IDRGValidator/GetDBVersionText?pIDRGValidator=45467
        returns JSON-Out{pbstrDBVersionText: "3.22"}

    http://localhost:34778/drgValidatorServer100/IDRGValidator/GetDBVersionDate?pIDRGValidator=45467
        returns JSON-Out{pdDBVersionDate: "2021-11-29"}

    http://localhost:34778/drgValidatorServer100/IDRGValidator/GetCreateValidate?pIDRGValidator=45467
        returns JSON-Out{pIValidate: 47008}

    http://localhost:34778/drgValidatorServer100/IValidate/PutDestructValidate
        JSON-IN(pIValidate: 47008}

    http://localhost:34778/drgValidatorServer100/IDRGValidator/PutDestructDRGValidator
        JSON-IN{pIDRGValidator:45467}


 setParameter feature of the IValidate::AddService method

There are 2 service providers in swissDRG -hospitals and maternity clinics- using the same service code space! Furthermore, swissDRG distinguishes between normal and relocation cases.
For being able to separate these cases, pseudo services have been defined consisting of a tariff type, a date and a pseudo code! Such a pseudo code consists of:

setParameter(cmd=value)
where the whole pseudo code is case and whitespace insensitive. A pseudo code is active until the next call of the Initialize method and is then reset to the default values.

The following pseudo codes are defined for swissDRG:

  1. setParameter(providerType=value), with value = { hospital | maternityClinic }, and hospital as default.
    This command set the focus to swissDRG service records for hospitals or maternity clinics, respectively.
  2. setParameter(relocation=value), with value = { on | off }, and off as default.
    This command calculates the TP for the normal (off) or relocation (on) case.
The return value of AddService is S_OK for successfully set a pseudo value. However, do not call the properties as these are undefined in such a case.


 New and important features of the drgValidator

The internals of swissDRG and APDRG differ significantly. However, it was a design goal to not change the COM interface and thus to not generate a new version of the drgValidator.

As a consequence methods of both the ISearch and IValidate interfaces have been patched to reflect the different internals of the DRG catalogs.
The following list identifies these methods and propeties that have been patched for swissDRG:

IValidate interface

  • AddService method
    There are 2 service providers in swissDRG -hospitals and maternity clinics- using the same service code space! Furthermore, swissDRG distinguishes between normal and relocation cases. For being able to separate these cases, pseudo services have been defined consisting of a tariff type, a date and a pseudo code! Such a pseudo code consists of:
    setParameter(cmd=value)
    where the whole pseudo code is case and whitespace insensitive. A pseudo code is active until the next call of the Initialize method and is then reset to the default values.

    The following pseudo codes are defined for swissDRG:

    1. setParameter(providerType=value), with value = { hospital | maternityClinic }, and hospital as default.
      This command set the focus to swissDRG service records for hospitals or maternity clinics, respectively.
    2. setParameter(relocation=value), with value = { on | off }, and off as default.
      This command calculates the TP for the normal (off) or relocation (on) case.
    The return value of AddService is S_OK for successfully set a pseudo value. However, do not call the properties as these are undefined in such a case.

ISearch interface
  • SearchCode, SearchName, SearchMDC methods
    There are 2 service providers in swissDRG -hospitals and maternity clinics- using the same service code space! The hospital provider is the default space and maternity clinics are chosen by prepending maternityClinic: to the query term.
  • GetTP property
    A negative LOS signals to calculated the effective cost weight for the relocation case of the given |LOS|.
  • GetCodeType property
    All swissDRG codes of type "other" are counted as enCodeUndefined.
  • GetServiceType property
    The interpretation of the serviceType changes for SwissDRG and APDRG!
  • GetHighTrimPoint2 property
    swissDRG does not have a HTP2! Therefore, the "exception to readmission" information is supplied via this property: -1 = no exception; 1 = exception