mygilli
Goto Top

XML File mit Daten befüllen

Hallo!

Ich habe eine XML-Datei (XML-Struktur) und müsste diese mit Daten befüllen!
Leider habe ich nicht viel Erfahrung mit XML-Dateien und weiß daher nicht wie ich das am besten machen kann!

Am liebesten wäre mir, wenn ich das File einfach im Excel öffnen könnte und dann die Daten Reihe für Reihe eingeben könnte ... ist sowas überhaupt möglich?

Vielen Dank für eure Hilfe!
myGilli

Content-Key: 140965

Url: https://administrator.de/contentid/140965

Printed on: April 16, 2024 at 04:04 o'clock

Member: dog
dog Apr 19, 2010 at 15:18:24 (UTC)
Goto Top
Ähm...ja...welche Programmiersprache?
Member: nxclass
nxclass Apr 19, 2010 at 15:25:48 (UTC)
Goto Top
Es gibt da eine Reihe von (auch kostenlosen) XML Editoren - einfach mal suchen.

( http://www.heise.de/software/download/o0g0s5l5k163 )
Member: Biber
Biber Apr 19, 2010 at 15:44:19 (UTC)
Goto Top
Moin mygulli,

sagen wir so....
Wenn du mit einer derartig präzisen Funktionsbeschreibung und einem dicken Portemonnaie zu einem Gebrauchtwagenhändler, in ein Fachgeschäft für Herrenoberbekleidung oder auch in ein Softwarehaus gehen würdest.... die würden dir die Lösung für alle Probleme massgeschneidert zusammenstellen und du würdest dich schon nach sehr kurzer Zeit richtig erleichtert fühlen.
Ein marktübliches Kreiskrankenhaus dagegen würde vermutlich sofort versuchen, dich zu adoptieren.

Bitte versuch nochmal in etwas chronologischerer Reihenfolge zu beschreiben,
  • was du hast (jetziger Zustand),
  • was du am Ende des Tages haben willst (Sollzustand) und
  • was denn der Plan und die Mittel sind, von A nach B zu gelangen.

"Ich habe eine {leere} XML-Datei" ist je nach Vorbildung, Herkunft, Religion und Gutgläubigkeit der MitleserInnen mit relativ diametralen Assoziationen verknüpft.
Was denn Excel damit zu tun haben könnte, erschließt sich dem mit nur im Suoermarkt erhältlicher Glaskugelpolitur ausgerüsteten Leser auch nicht sofort.
Sind denn die Daten dort schon verhanden oder müssen die so oder so eingetippselt werden....?

"Am liebesten wäre mir, wenn ich das File einfach im Excel öffnen könnte " .... klar, wenn es ein "well formed document" sein sollte, dann geht das..
[ Edit] In der deutschen Excel-Hilfe haben die UnterschleißheimerInnen das echt übersetzt... heißt auf bajuwarisch "in einer gut aufgebauten XML-Datei " *lachlachlaaaaaaaaaach* [/Edit]

Allein die Abschlussfrage "... ist sowas überhaupt möglich?" ist spontan zu beantworten: Mit einem Budget von 189 Trilliarden und 230 Jahren Zeit schaffen wir alles.

"Nichts ist unmöglich", sagte doch schon ein bekannter japanischer Automobilverticker...
... der allerdings seit neuestem während der Fahrt immer das Reserverad verlieren soll, hört man/frau...

Grüße
Biber
Member: nxclass
nxclass Apr 19, 2010 at 18:45:36 (UTC)
Goto Top
Eigentlich sollte es möglich sein dein Excel Dokument als XML zu speichern. Nun benötigst Du nur eine XSL Datei um aus der XML Datei eine valide (für deine Zwecke formatierte) neue XML Datei zu generieren. Dafür benötigst Du einen XSL-Transformator.

http://de.wikipedia.org/wiki/XSL_Transformation
Member: Biber
Biber Apr 19, 2010 at 19:29:23 (UTC)
Goto Top
Ja nee, nxclass,,

Eigentlich sollte es möglich sein dein Excel Dokument als XML zu speichern
So versteh ich das Redmonder Angebot aber nicht ganz, offen gestanden.

Nach dem, was ich glaube auf wikipedia zum Thema SpreadsheetML,
bei M$-Download-Center Office 2003: XML Reference Schemas
oder auch M$ 0ff2002 XML Spreadsheet Reference verstanden zu haben....

---> ist erstens dieses was Excel glaubt als XML-Format bezeichnen zu dürfen keinerlei anerkannter Standard, sondern ....na, sagen wir mal, ein Excel-File im XML-Look. Hat durchaus Tags und ist in sich logisch geschlossen und die Redmonder können es lesen und schreiben.
Aber sonst interessiert sich kein anderes Aas für das Lesen-Wollen.
Bestenfalls dafür, (Tabellenartige) Daten direkt in ein Redmonder Excel-XML-Format zu schreiben.
Einen Resultset aus einer Oracle oder mySQl-Datenbank in ein Excel (oder OpenCalc)-XML-Format zu bringen.

Und ich sehe KEINE halbwegs für labile Menschen empfehlenswerte Möglichkeit, eine "normale" XML-Datei aus Excel heraus zu schreiben, sondern nur dieses SpreadShettML-Formal, in dem allen Zeilen "Row" heißen und alle Zellen <Cell>. Und nicht etwa eine variable UND validierbare Struktur a la DTD/XSLT/XSD oder ähnlich.

In Excel gibt es die Möglichkeit, als *.xml zu spreichern, nicht aber eine Fremdstruktur zu füllen (so weit ich es verstehe).

Deshalb war ja meine Rückfrage, wo denn "die Daten entstehen" bzw. ob die schon in irgendwelchen Excel-Tabellen vorliegen.

  • Wenn die Daten erst eingetippselt werden müssen, dann hättest du mit deinen XML-Editoren schon den besten Tipp gegeben.
  • Wenn die Daten schon in (Excel-) Tabellen vorliegen, dann sehe ich als das Schmerzfreieste noch eine Seite VBA-If-Then-Else-Spaghetticode., um eine "echte" XML-Datei zu erzeugen.

Grüße
Biber
Member: dog
dog Apr 19, 2010 at 19:36:24 (UTC)
Goto Top
<meine-meinung>
in dem allen Zeilen "Row" heißen und alle Zellen <Cell>

Na das ist doch XML.
Mal ehrlich: Wer XML ernster nimmt als Tags (und damit meine ich grade die DTD-Schlacht, die sich Microsoft sonst immer liefert) der braucht mal Urlaub face-smile
XML ist in etwa das geistige Ergebnis, das man erhält, wenn man 50 Java-Programmierer und 50 Manager in einen Raum steckt und alle 2 Minuten "Enterprise Class Solution!" ruft.
</meine-meinung>
Member: Biber
Biber Apr 19, 2010 at 19:51:23 (UTC)
Goto Top
Also nicht ganz, dog,

klar sind XML-Dateien nur die ASCII-Dateien der 90er Jahre, auch nur ziemlich lose strukturierter Plaintext ohne viel Geheimnisse.

Aber minimal haben sie von der Philosophie her zwei Eigenschaften
  • ein XML ist well formed (oder auf normaldeutsch. jeder Tag-Auf hat auch einen Tag-Zu und das bei jedem Element)
  • und ein XML ist validierbar gegen eine Strukturbeschreibung, die variabel und dateiunabhängig vom Nutzlast-XML und damit eben NICHT im XML-Dokument hinterlegt werden kann in einer Extra-Datei (XSD/XSLT.....) .

Und von dem zweiten Feature sehe ich nichts bei der SpreadSheetML-Variante.

Das ist doch ein Witz, wenn ich ein (Exceleigenes) XML erzeugen kann, das ich nur mit Excel jemals wieder lesen kann.
XML soll doch gerade die programm- und Applikationsunabhängige Datentauschbarkeit gewährleisten.

Ich kann mit einer Grossrechner-IMS-Büchse oder einer AS/400 XMLs austauschen, und auf dem PC keine XML-Dateien mit Excel ??!!??

Ist doch wohl gaga....

Grüße
Biber
Member: mygilli
mygilli Apr 21, 2010 at 11:00:15 (UTC)
Goto Top
Zitat von @Biber:
Bitte versuch nochmal in etwas chronologischerer Reihenfolge zu beschreiben,
  • was du hast (jetziger Zustand),
  • was du am Ende des Tages haben willst (Sollzustand) und
  • was denn der Plan und die Mittel sind, von A nach B zu gelangen.

Hallo!

Ich beschreibe einfach mal um was es überhaupt geht: Ich müsste für das Finanzamt "Anträge auf Vorsteuererstattungen" machen.
Wenn man eine gewieße Anzahl an Anträgen im Jahr überschreitet (bei uns jetzt der Fall) müssen diese via Datenstrom übermittelt werden:

Das FA stellt dafür eine eigene Seite für "Software-Entwickler" zur Verfügung:
http://www.bmf.gv.at/EGovernment/FINANZOnline/InformationenfrSoft_3165/ ...
* was du hast (jetziger Zustand),
XML-Struktur - Antrag + XSD-Schema - Antrag (aus dem oben genannten Link)

* was du am Ende des Tages haben willst (Sollzustand)
Diese File in dem angegebenen Format das mit unseren Anträgen gefüllt ist und ich diese auf der Finanzonline-Page dann hochladen kann!

* was denn der Plan und die Mittel sind, von A nach B zu gelangen.
Plan & Mittel: Es gibt eine Anwendung die das ganze fix & fertig bietet: http://www.schweighofer.com/software/?ProgID=23 kostet aber 600€ meine Plan ist herausfinden ob ich das ganze selbst lösen kann oder ob ich doch auf diese Fremdsoftware angewiesen bin! Jetzt kennst du meinen Plan und mein Budget ;)
Member: Biber
Biber Apr 21, 2010 at 11:37:38 (UTC)
Goto Top
Moin mygylli,

danke dir für die ausführliche und klärende Rückantwort.
Ich hatte schon befürchtet, ich hättest meine Nachfrage als nicht angemessen empfunden....
Aber die war durchaus ernsthaft und konstruktiv gemeint, genauso, wie du sie auch beantwortet hast.

Okay, nach einen (ersten flüchtigen) Blick auf die Komplexität der Schnittstelle (die Spezifikationen des FA-Links) und das erhältliche Tool (2.Link) dagegen..

a) "XML direkt in Excel öffnen und eingeben"(deine Wunschvariante aus dem Eröffnungspost) .... ja nee, das ist eher illusorisch. Halte ich für nicht realisitisch/für zu aufwändig und risikoreich

b) die Eingabe über XML-Editoren.... wäre die billigste Lösung. Erfordert aber auch am meisten Disziplin und ist am fehleranfälligsten. Vorhandene Daten müssen aus vorhandener Darstellungsform A in Layout B übertragen/gecopy&pastet werden. Wäre mir vom Bauch her auch zuwider als Entwickler. Andererseits.... Automatisierung lohnt sich vom Aufwand her nur, wenn es doch pro Monat mehr als eine Stunde nerviger und stupider Tippselei einspart....

c) die Verwendung des "ab 600 Euro-Tools".... hmmja... rechnen wir dagegen: wenn du mit Eigenprogrammierung sagen wir mal 4 MannTage unterwegs bist + 2 Tage Testen/Kosmetik vom Prototyp bis zur v1.00a + 1x Rückantwort vom FA "Daten nicht korrekt befüllt" beim ersten Export + 1 Manntag Hotfix
---> dann bin ich überschlägig bei 7 MT mal normaler IT-Kalkulationszuschlag = 10 Manntage.

Bei Variante c) musst du jetzt selbst entscheiden, ob 10 "deiner" Manntage günstiger oder teuer sind als eine Fremdbeschaffung im Wert von € 600.-

Grüße
Biber
Member: mygilli
mygilli Apr 21, 2010 at 13:09:28 (UTC)
Goto Top
Hallo Biber!

Du wirst rechthaben, eine eigene Lösung/Anwendung zu pasteln wird wahrscheinlich viel zu aufwändig/problematisch und übersteigt dann höchstwahrscheinlich die Kosten einer fertigen Anwendung!
Du hast mir bei der Entscheidung sehr geholfen - Danke Dir!

Lg myGilli