stephanstapel / ZUGFeRD-csharp

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

Issue beim Schreiben von PayeeTradeParty bei COMFORT #360

Open MSergLoos opened 2 days ago

MSergLoos commented 2 days ago

Profile = Comfort ZUGFeRDVersion.Version22

Dieser Code erzeugt folgendes XML:

invoice.Payee = new Party() {
  ID = new GlobalID(GlobalIDSchemeIdentifiers.Unknown, "Sample ID"),
  Name = "Sample Name",
};
<ram:PayeeTradeParty>
        <ram:ID>Sample ID</ram:ID>
        <ram:Name>Sample Name</ram:Name>
        <ram:PostalTradeAddress>
          <ram:CountryID>Unknown</ram:CountryID>
        </ram:PostalTradeAddress>
      </ram:PayeeTradeParty>

PostalTradeAddress ist nicht valide und sollte laut Spezifikation überhaupt nicht geschrieben werden.

MSergLoos commented 2 days ago

Jetzt habe ich beim Ausführen:

Diese Ausnahme wurde ursprünglich von dieser Aufrufliste ausgelöst: System.ThrowHelper.ThrowInvalidOperationException(System.ExceptionResource) System.Collections.Generic.Stack.Pop() s2industries.ZUGFeRD.ProfileAwareXmlTextWriter.WriteEndElement() in ProfileAwareXmlTextWriter.cs s2industries.ZUGFeRD.InvoiceDescriptor23CIIWriter.Save(s2industries.ZUGFeRD.InvoiceDescriptor, System.IO.Stream, s2industries.ZUGFeRD.ZUGFeRDFormats) in InvoiceDescriptor23CIIWriter.cs s2industries.ZUGFeRD.InvoiceDescriptor23Writer.Save(s2industries.ZUGFeRD.InvoiceDescriptor, System.IO.Stream, s2industries.ZUGFeRD.ZUGFeRDFormats) in InvoiceDescriptor23Writer.cs s2industries.ZUGFeRD.InvoiceDescriptor.Save(System.IO.Stream, s2industries.ZUGFeRD.ZUGFeRDVersion, s2industries.ZUGFeRD.Profile, s2industries.ZUGFeRD.ZUGFeRDFormats) in InvoiceDescriptor.cs

stephanstapel commented 2 days ago

Jetzt habe ich beim Ausführen:

Diese Ausnahme wurde ursprünglich von dieser Aufrufliste ausgelöst: System.ThrowHelper.ThrowInvalidOperationException(System.ExceptionResource) System.Collections.Generic.Stack.Pop() s2industries.ZUGFeRD.ProfileAwareXmlTextWriter.WriteEndElement() in ProfileAwareXmlTextWriter.cs s2industries.ZUGFeRD.InvoiceDescriptor23CIIWriter.Save(s2industries.ZUGFeRD.InvoiceDescriptor, System.IO.Stream, s2industries.ZUGFeRD.ZUGFeRDFormats) in InvoiceDescriptor23CIIWriter.cs s2industries.ZUGFeRD.InvoiceDescriptor23Writer.Save(s2industries.ZUGFeRD.InvoiceDescriptor, System.IO.Stream, s2industries.ZUGFeRD.ZUGFeRDFormats) in InvoiceDescriptor23Writer.cs s2industries.ZUGFeRD.InvoiceDescriptor.Save(System.IO.Stream, s2industries.ZUGFeRD.ZUGFeRDVersion, s2industries.ZUGFeRD.Profile, s2industries.ZUGFeRD.ZUGFeRDFormats) in InvoiceDescriptor.cs

ja, habe ich auch gerade gemerkt. Brauche etwas, um das zu fixen.

MSergLoos commented 2 days ago

ja, habe ich auch gerade gemerkt. Brauche etwas, um das zu fixen.

Lass Dir ruhig Zeit .. 👍

stephanstapel commented 2 days ago

jetzt bitte testen. Freue mich auf Erweiterung der Testcases, das wäre sehr hilfreich. Siehe TestPartyExtensions().

MSergLoos commented 1 day ago

Hi Stephan, im Moment kann ich das nicht machen, aber ich schaue es mir später an und sehe, was ich tun kann.

stephanstapel commented 12 hours ago

Hallo @MSergLoos , hast Du es schon ausprobieren können?

MSergLoos commented 10 hours ago

Nein, noch nicht. Diese Woche werde ich es nicht schaffen. Ich schreibe, wenn ich es gemacht habe.