2016-03-22 4 views
0

Ich benutze die Übergabe xlsx-to-json npm-Paket, und es ist ganz in Ordnung. Es gibt eine Option zum Targeting eines einzelnen Blattes, aber keine schnelle Möglichkeit zum Verschachteln von Objekten. Ich weiß, das liegt daran, dass die Art der Tabellen A: 1 ist, begrenzt auf 1 Datenebene.XLS => geschachtelt JSON

Ich habe festgestellt, dass wir mehrere Blätter haben und sie in ein 2-Level-Deep-Objekt {a:{1:x},b:{2:z}} stechen --- aber etwas tiefer als das, in diesem Ansatz, würde ein zusätzliches Blatt erfordern. Das würde schnell außer Kontrolle geraten.

Wahrscheinlich gibt es keinen Weg um die Begrenzung und ich bin der falsche Baum bellen, aber es lohnt sich die brillante Leute hier zu fragen, wenn es eine Methode gibt, XSL verwenden, um verschachtelte Objekte auszugeben?

Antwort

1

Während es sehr langwierig und wahrscheinlich nicht wert ist, ist es theoretisch möglich, jede relationale Datenbank in xls zu simulieren. Und relationale Datenbanken können in tief verschachtelte Objekte umgewandelt werden.

Also ja, es ist sicherlich möglich, aber es ist wahrscheinlich eine Straße, die Sie nicht gehen wollen.

Als Beispiel: Sie könnten 1 Blatt mit Kunden, 1 Blatt mit Bestellungen und 1 Blatt mit Auftragszeilen haben. Wenn Sie IDs verwenden, um bestimmte Kunden, Bestellungen und Auftragspositionen eindeutig zu referenzieren, können Sie sich darauf beziehen und unterschiedliche Arten von verschachtelten json-Objekten erstellen. Zum Beispiel Kunden mit mehreren Bestellungen mit mehreren Bestellpositionen. Oder Bestellungen mit einem Kunden und mehreren Bestellposten.

+0

Ich vermute, der beste Ansatz dafür wäre, die XLS für eine optimierte MongoDB-Schnittstelle zu tauschen. Um eine flache oder relationale Konvertierung in eine Verschachtelung zu vermeiden, beginnen Sie mit verschachtelten Wörterbüchern. Danke, dass du eine Stimme aus gutem Grund bist. – vars