示例#1
0
        public bool Validate(ns2BilanzdatenTyp elbaInformation)
        {
            ResultMessages.Clear();

            XmlNode instanceNode = elbaInformation.Abschluss.First()?.Daten.XbrlAbschlussdaten.XBRL.Any.FirstOrDefault();

            if (instanceNode == null)
            {
                ResultMessages.Add(new RequestResultMessage("Es konnte keine XBRL-Instanz gefunden werden.", MessageId));
                return(IsValid);
            }

            XmlNamespaceManager    namespaceManager = BalanceInformation.SetupNamespaceManager(instanceNode.OwnerDocument);
            ns2BilanzdatenTypKunde kunde            = elbaInformation.Kunde;

            CompareValues(instanceNode, namespaceManager, CompanyNameConcept, kunde.Name, "Name (Kunde)");
            CompareValues(instanceNode, namespaceManager, CompanyCountryConcept, kunde.Adresse.Land, "Land (Kunde)");
            if (kunde.Adresse.Hausanschrift != null)
            {
                CompareValues(instanceNode, namespaceManager, CompanyCityConcept, kunde.Adresse.Hausanschrift.Ort,
                              "Ort (Kunde Hausanschrift)");
                CompareValues(instanceNode, namespaceManager, CompanyZipCodeConcept, kunde.Adresse.Hausanschrift.PLZ,
                              "PLZ (Kunde Hausanschrift)");
                ValidateAddress(instanceNode, namespaceManager, kunde.Adresse.Hausanschrift.Strasse_Hausnummer.Trim());
            }

            return(IsValid);
        }
示例#2
0
        public ns2BilanzdatenTypKunde ToElbaData()
        {
            ns2BilanzdatenTypKunde kunde = new ns2BilanzdatenTypKunde
            {
                Identifikationen = new ns2IdentifikationKundeTypIdentifikation[Identities.Count]
            };

            for (int i = 0; i < Identities.Count; i++)
            {
                kunde.Identifikationen[i] = Identities[i].ToElbaData();
            }

            kunde.Name         = Name;
            kunde.Adresse      = Address.ToElbaData();
            kunde.Kontaktdaten = ContactData.ToKontaktElbaData();

            return(kunde);
        }