stephanstapel / ZUGFeRD-csharp

C# assembly for creating and reading ZUGFeRD invoices
Apache License 2.0
218 stars 116 forks source link

XRechnung: Consider modifying handling of SellerTradeParty #68

Closed stephanstapel closed 4 years ago

stephanstapel commented 4 years ago

image

<ram:SellerTradeParty>
        <ram:GlobalID schemeID="0088">4000001123452</ram:GlobalID>
        <ram:Name>Lieferant GmbH</ram:Name>
        <ram:DefinedTradeContact />
        <ram:PostalTradeAddress>
          <ram:PostcodeCode>80333</ram:PostcodeCode>
          <ram:LineOne>Lieferantenstraße 20</ram:LineOne>
          <ram:CityName>München</ram:CityName>
          <ram:CountryID>DE</ram:CountryID>
        </ram:PostalTradeAddress>
        <ram:SpecifiedTaxRegistration>
          <ram:ID schemeID="FC">201/113/40209</ram:ID>
        </ram:SpecifiedTaxRegistration>
        <ram:SpecifiedTaxRegistration>
          <ram:ID schemeID="VA">DE123456789</ram:ID>
        </ram:SpecifiedTaxRegistration>
      </ram:SellerTradeParty>
AndreasWaning commented 4 years ago

Hallo Stephan, so sieht das aus, in der XRechnung.xml, wo der Validator nicht meckert:

4000001123452 Lieferant GmbH Max Mustermann Muster-Einkauf +49891234567 _ Max@Mustermann.de ** 80333 Lieferantenstraße 20 München DE 201/113/40209 DE123456789
stephanstapel commented 4 years ago

danke. Es ist schon klar, welche Felder gefüllt sein müssen. Das Problem ist, dass die Bibliothek das Füllen dieser Felder nicht erzwingt:

Werden die Felder mit Hilfe von SetSellerContact() gefüllt, klappt die Validierung. Werden die Felder nicht per SetSellerContact() gefüllt, klappt die Validierung nicht.

D.h. der Erfolg ist dem Benutzer überlassen, der bekommt aber keinen Hinweis darauf, dass das Ergebnis womöglich nicht korrekt ist.