API browser of generalInvoiceResponse440 COM module


/images/arrow_right.png IGeneralInvoiceResponseManager::GetXMLInfo method
Preloads and analyzes a XML infoset regarding the accepted schema and other important information.
If the XML infoset is of an accepted type then the fromEAN, toEAN as well as the encryption status are additionally extracted. The accepted XML types are
  • generalInvoiceResponse_440.xsd - native full support
  • generalInvoiceResponse_430.xsd - native full support
  • generalInvoiceResponse_410.xsd - only delegated load and print support
  • hospitalInvoiceResponse_400.xsd - only delegated load and print support
  • mdInvoiceResponse_400.xsd - only delegated load and print support
Since the data space of the natively handled versions V440 and V430 is disjoint to the lower versions V410/V400 an upgrade to V440 from that lower versions is not possible. Therefore the lower V410/V400 versions can only be loaded and printed with the LoadXML / Print methods in a delegated fashion using the lower version COM modules (if these are installed!). As a consequence all IGeneralInvoiceResponse methods return a compatibility error if called after loading a lower version than V430. If full support is needed for the lower versions then there is not resort than using the native COM versions directly.
The XSD name is set even if an error is generated.

This method should be called before calling the full XML loader LoadXML since the infoset is possibly encrypted. In this situation the corresponding PFX certificate and password must be supplied in the XML loader.

space
 
/images/arrow_right.png C/C++ calling syntax
HRESULT GetXMLInfo( BSTR
BSTR
BSTR
BSTR
YesNoType
VARIANT_BOOL
bstrInputFile,
*pbstrUsedSchema,
*pbstrFromEAN,
*pbstrToEAN,
*peIsEncrypted,
*pbStatus);
 
/images/arrow_right.png Calling argument description
[in] BSTR bstrInputFile The full file name (path + name) of a XML infoset of type generalInvoiceResponse_440.xsd, generalInvoiceResponse_430.xsd, generalInvoiceResponse_410.xsd, hospitalInvoiceResponse_400.xsd, or mdInvoiceResponse_400.xsd.
[out] BSTR *pbstrUsedSchema The full XSD name of the loaded XML file.
[out] BSTR *pbstrFromEAN The EAN number of the sender as supplied by medwin.ch
Note that this is the initial receiver of the request since the transport information from the request is mirrored in the response
[out] BSTR *pbstrToEAN The EAN number of the receiver as supplied by medwin.ch
Note that this is the initial sender of the request since the transport information from the request is mirrored in the response
[out] YesNoType *peIsEncrypted A Boolean that defines if the XML infoset is encrypted.

If true the private PFX certificate/password of the "toEAN" entity must be given in the LoadXML method otherwise the infoset can not be decrypted.

[out, retval] VARIANT_BOOL *pbStatus Return status of the method. If pbStatus is VARIANT_FALSE then an error occurred and GetAbortInfo should be called to retrieve the error string.
 
/images/arrow_right.png C/C++ return value
S_OK This value is returned if the function call was successful or if the return value of a boolean method signalling a true value. In this case the VARIANT_BOOL is set to VARIANT_TRUE.
S_FALSE This is the return value of a boolean method signalling a false return value. In this case the VARIANT_BOOL is set to VARIANT_FALSE.
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.