Elexis API documentation
Version 2.1.6 as of December 11 2011

ch.elexis.TarmedRechnung
Class XMLExporter

java.lang.Object
  extended by ch.elexis.TarmedRechnung.XMLExporter
All Implemented Interfaces:
IRnOutputter

public class XMLExporter
extends java.lang.Object
implements IRnOutputter

Exportiert eine Elexis-Rechnung im XML 4.0 Format von xmldata.ch Bitte KEINE Änderungen an dieser Klasse durchführen. Senden Sie Verbesserungsvorschläge oder Wünsche als Mail oder direkt als Patch an weirich@elexis.ch. zur Weiterverarbeitung verwendet werden. DoExport(..) liefert ein JDOM-Dokument, das die gewünschte Rechnung enthält. Diese kann vom Aufrufer dann an einen Intermediär oder auf einen Drucker ausgegeben werden. Der Output dieses Exporters ist TrustX zertifiziert. Änderungen sollten in den seltensten Fällen nötig sein. Falls doch: Fehlermeldungen bitte an weirich@elexis.ch

Author:
gerry

Nested Class Summary
 
Nested classes/interfaces inherited from interface ch.elexis.util.IRnOutputter
IRnOutputter.TYPE
 
Field Summary
static java.lang.String ATTR_AMOUNT
           
static java.lang.String ATTR_AMOUNT_CANTONAL
           
static java.lang.String ATTR_AMOUNT_DRUG
           
static java.lang.String ATTR_AMOUNT_DUE
           
static java.lang.String ATTR_AMOUNT_LAB
           
static java.lang.String ATTR_AMOUNT_MIGEL
           
static java.lang.String ATTR_AMOUNT_MT
           
static java.lang.String ATTR_AMOUNT_PHYSIO
           
static java.lang.String ATTR_AMOUNT_PREPAID
           
static java.lang.String ATTR_AMOUNT_TARMED
           
static java.lang.String ATTR_AMOUNT_TARMED_MT
           
static java.lang.String ATTR_AMOUNT_TARMED_TT
           
static java.lang.String ATTR_AMOUNT_TT
           
static java.lang.String ATTR_AMOUNT_UNCLASSIFIED
           
static java.lang.String ATTR_CODE
           
static java.lang.String ATTR_QUANTITY
           
static java.lang.String ATTR_REMARK
           
static java.lang.String ATTR_TARIFF_TYPE
           
static java.lang.String DISEASE
           
static java.lang.String ELEMENT_BALANCE
           
static java.lang.String ELEMENT_INVOICE
           
static java.lang.String ELEMENT_REMARK
           
static java.lang.String ELEMENT_SERVICES
           
static java.lang.String ELEMENT_TIERS_GARANT
           
static java.lang.String ELEMENT_TIERS_PAYANT
           
static java.lang.String FIELDNAME_TIMESTAMPXML
           
static Namespace ns
           
static java.lang.String TIERS_GARANT
           
static java.lang.String TIERS_PAYANT
           
static java.lang.String VAT_ISMANDANTVAT
           
static java.lang.String VAT_MANDANTVATNUMBER
           
 
Fields inherited from interface ch.elexis.util.IRnOutputter
PROP_OUTPUT_METHOD
 
Constructor Summary
XMLExporter()
           
 
Method Summary
 Element buildAdressElement(Kontakt k)
           
 Element buildAdressElement(Kontakt k, boolean useAnschrift)
           
 Element buildOnlineElement(Kontakt k)
           
 Element buildPostalElement(Kontakt k)
           
 Element buildPostalElement(ch.elexis.TarmedRechnung.XMLExporter.Postanschrift postanschrift)
           
 Element buildTelekomElement(Kontakt k)
           
 boolean canBill(Fall fall)
          check whether a case could be billed, i.e. all billing data are present.
 boolean canStorno(Rechnung rn)
          Wa want to be informed on cancellings of any bills
 void clear()
          Reset exporter
 Control createSettingsControl(Composite parent)
          Create a Control to perform necessary setings for his outputter.
 Document doExport(Rechnung rechnung, java.lang.String dest, IRnOutputter.TYPE type, boolean doVerify)
          Export a bill as XML.
 Result<Rechnung> doOutput(IRnOutputter.TYPE type, java.util.Collection<Rechnung> rnn, java.util.Properties props)
          Output a Collection of bills.
 java.lang.String getDescription()
          A short textual description for this output (as Label)
static java.lang.String makeTarmedDatum(java.lang.String datum)
           
 void saveComposite()
          Methode is called before dialog is closed.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

VAT_ISMANDANTVAT

public static final java.lang.String VAT_ISMANDANTVAT
See Also:
Constant Field Values

VAT_MANDANTVATNUMBER

public static final java.lang.String VAT_MANDANTVATNUMBER
See Also:
Constant Field Values

ATTR_REMARK

public static final java.lang.String ATTR_REMARK
See Also:
Constant Field Values

ELEMENT_TIERS_PAYANT

public static final java.lang.String ELEMENT_TIERS_PAYANT
See Also:
Constant Field Values

ELEMENT_TIERS_GARANT

public static final java.lang.String ELEMENT_TIERS_GARANT
See Also:
Constant Field Values

ATTR_CODE

public static final java.lang.String ATTR_CODE
See Also:
Constant Field Values

DISEASE

public static final java.lang.String DISEASE
See Also:
Constant Field Values

ATTR_TARIFF_TYPE

public static final java.lang.String ATTR_TARIFF_TYPE
See Also:
Constant Field Values

ELEMENT_REMARK

public static final java.lang.String ELEMENT_REMARK
See Also:
Constant Field Values

TIERS_GARANT

public static final java.lang.String TIERS_GARANT
See Also:
Constant Field Values

TIERS_PAYANT

public static final java.lang.String TIERS_PAYANT
See Also:
Constant Field Values

ATTR_AMOUNT_PHYSIO

public static final java.lang.String ATTR_AMOUNT_PHYSIO
See Also:
Constant Field Values

ATTR_AMOUNT_MIGEL

public static final java.lang.String ATTR_AMOUNT_MIGEL
See Also:
Constant Field Values

ATTR_AMOUNT_LAB

public static final java.lang.String ATTR_AMOUNT_LAB
See Also:
Constant Field Values

ATTR_AMOUNT_DRUG

public static final java.lang.String ATTR_AMOUNT_DRUG
See Also:
Constant Field Values

ATTR_AMOUNT_UNCLASSIFIED

public static final java.lang.String ATTR_AMOUNT_UNCLASSIFIED
See Also:
Constant Field Values

ATTR_AMOUNT_CANTONAL

public static final java.lang.String ATTR_AMOUNT_CANTONAL
See Also:
Constant Field Values

ATTR_AMOUNT_TARMED_TT

public static final java.lang.String ATTR_AMOUNT_TARMED_TT
See Also:
Constant Field Values

ATTR_AMOUNT_TARMED_MT

public static final java.lang.String ATTR_AMOUNT_TARMED_MT
See Also:
Constant Field Values

ATTR_AMOUNT_TARMED

public static final java.lang.String ATTR_AMOUNT_TARMED
See Also:
Constant Field Values

ATTR_AMOUNT

public static final java.lang.String ATTR_AMOUNT
See Also:
Constant Field Values

ATTR_AMOUNT_TT

public static final java.lang.String ATTR_AMOUNT_TT
See Also:
Constant Field Values

ATTR_AMOUNT_MT

public static final java.lang.String ATTR_AMOUNT_MT
See Also:
Constant Field Values

ATTR_QUANTITY

public static final java.lang.String ATTR_QUANTITY
See Also:
Constant Field Values

ATTR_AMOUNT_DUE

public static final java.lang.String ATTR_AMOUNT_DUE
See Also:
Constant Field Values

ELEMENT_SERVICES

public static final java.lang.String ELEMENT_SERVICES
See Also:
Constant Field Values

ATTR_AMOUNT_PREPAID

public static final java.lang.String ATTR_AMOUNT_PREPAID
See Also:
Constant Field Values

ELEMENT_BALANCE

public static final java.lang.String ELEMENT_BALANCE
See Also:
Constant Field Values

ELEMENT_INVOICE

public static final java.lang.String ELEMENT_INVOICE
See Also:
Constant Field Values

ns

public static final Namespace ns

FIELDNAME_TIMESTAMPXML

public static final java.lang.String FIELDNAME_TIMESTAMPXML
See Also:
Constant Field Values
Constructor Detail

XMLExporter

public XMLExporter()
Method Detail

clear

public void clear()
Reset exporter


doOutput

public Result<Rechnung> doOutput(IRnOutputter.TYPE type,
                                 java.util.Collection<Rechnung> rnn,
                                 java.util.Properties props)
Output a Collection of bills. This essentially lets the user modify the output settings (if any) and then calls doExport() für each bill in rnn

Specified by:
doOutput in interface IRnOutputter
Parameters:
type - desired mode (original, copy, storno)
rnn - a Collection of Rechnung - Objects to output
props - properties for various purposes. Can be null.
Returns:
a result indicating errors

canStorno

public boolean canStorno(Rechnung rn)
Wa want to be informed on cancellings of any bills

Specified by:
canStorno in interface IRnOutputter
Parameters:
rn - we don't mind, we always return true
Returns:
true if this outputter wants to be informed if this (or any in case of Rn==null) bill is cancelled. If an outputter does need to react on storno messages, it should return false.

doExport

public Document doExport(Rechnung rechnung,
                         java.lang.String dest,
                         IRnOutputter.TYPE type,
                         boolean doVerify)
Export a bill as XML. We do, in fact first check whether this bill was exported already. And if so we do not create it again but load the old one. There is deliberately no possibility to avoid this behaviour. (One can only delete or storno a bill and recreate it (even then the stored xml remains stored. Additionally, the caller can chose to store the bill as XML in the file system. This is done if the parameter dest ist given. On success the caller will receive a JDOM Document containing the bill.

Parameters:
rechnung - the bill to export
dest - a full filepath to save the final document (or null to not save it)
type - Type of output (original, copy, storno)
doVerify - true if the bill should be sent trough a verifyer after creation.
Returns:
the jdom XML-Document that contains the bill. Might be null on failure.

getDescription

public java.lang.String getDescription()
Description copied from interface: IRnOutputter
A short textual description for this output (as Label)

Specified by:
getDescription in interface IRnOutputter

buildAdressElement

public Element buildAdressElement(Kontakt k)

buildAdressElement

public Element buildAdressElement(Kontakt k,
                                  boolean useAnschrift)

buildPostalElement

public Element buildPostalElement(Kontakt k)

buildPostalElement

public Element buildPostalElement(ch.elexis.TarmedRechnung.XMLExporter.Postanschrift postanschrift)

buildOnlineElement

public Element buildOnlineElement(Kontakt k)

buildTelekomElement

public Element buildTelekomElement(Kontakt k)

makeTarmedDatum

public static java.lang.String makeTarmedDatum(java.lang.String datum)

createSettingsControl

public Control createSettingsControl(Composite parent)
Description copied from interface: IRnOutputter
Create a Control to perform necessary setings for his outputter.

Specified by:
createSettingsControl in interface IRnOutputter
Returns:

canBill

public boolean canBill(Fall fall)
Description copied from interface: IRnOutputter
check whether a case could be billed, i.e. all billing data are present. This should only check for required absolutely mandatory data. At output time, the outputter still can reject.

Specified by:
canBill in interface IRnOutputter
Parameters:
fall - the case to check
Returns:
true if we can send a bill from this case

saveComposite

public void saveComposite()
Description copied from interface: IRnOutputter
Methode is called before dialog is closed. Used to save the widget contents before the composite is disposed;

Specified by:
saveComposite in interface IRnOutputter

Elexis API documentation
Version 2.1.6 as of December 11 2011

Copyright 2005-2011 by Gerry Weirich, Elexis