Végrehajtását a munka, hogy az Excel a hálózaton alapuló XML leképezés

Excel lehetővé teszi, hogy adjunk a saját XML-séma (XSD) munkafüzetek. Ha hozzáad egy XML sitemap jön létre, amely további funkciók adatok feldolgozására, nevezetesen a behozatali és kiviteli adatokat. Így lehet letölteni az adatokat a dokumentumban a tárolóból, majd írni az adatokat vissza az azonos XML séma.

A folyamat azzal kezdődik, hogy XSD fájlt egy Excel munkafüzetet. Ha már egyszer XSD fájlt, Excel létrehoz egy XML térképet, amely megjelenik a tálcán, „a forrás XML» (ld. 1.), amely a felhasználó használja elhelyezésére szolgáló adatok régiók vagy az egyes cellákat. Excel használja ezt a térképet, hogy ellenőrizzék a kölcsönhatás a régiók között, és hogy az elemek az XML-sémát. Excel munkafüzet tartalmazhat több XML térképeket, ahol minden nem függ mások. Egyszerre több kártyát kell kötni ugyanazt a rendszert. Amikor a felhasználó elvégzi az import vagy export XML adatok Excel használja a kártyát, hogy kommunikálni a tartalmát a régióban helyezkedik el, hogy az áramköri elemeket.

Végrehajtását a munka, hogy az Excel a hálózaton alapuló XML leképezés

1. ábra Panel «XML forrása”

Ez a cikk ismerteti a projekt, XML-alapú térképekkel, amely lehetővé teszi a felhasználók számára, hogy van egy közös dokumentum sablonok, XML séma és adattárház házigazdája az interneten. Kinda Excel 365 kezét.

Most tegyük fel, hogy van egy Excel munkafüzet az XML térképet a régiók és az importált adatokat. Ha megnézzük a könyvet a programozó, akkor nevezhetjük lazán. A „gyengén kötött” a koncepció laza csatolás programozás, azaz a dokumentum sablon gyengén kapcsolódó dokumentum adatait, amely lehetővé teszi, hogy átruházza a funkció a dokumentum a fejlesztő felhasználó. Hasonló megközelítés látható a WPF, ahol a munka a design az átruházott fejlesztő tervező, amely nem volt a Win Forms.

Ezért a projekt lehet alkalmazni a végrehajtása „O jelentések Excel” modul az üzleti alkalmazásokhoz. Ebben az esetben a fejlesztő nem kell létrehozni egy sablon, a felhasználó képes lesz rá magam.

építészet

Ez a projekt egy SOA (szolgáltatásorientált architektúra) architektúrára. Ügyfél Excel VSTO AddIn, és a szerver egy WCF szolgáltatás. A szolgáltatás a következő funkciókat biztosítja:

Munka sablonok.

Végrehajtását a munka, hogy az Excel a hálózaton alapuló XML leképezés

4. ábra: A protokoll kölcsönhatásokat, sablonok.

  1. A kliens küld kérést Enumerate.
  2. A paraméterek alapján kapott az ügyfél, a szolgáltatás épít egy gyűjteményt, és a gyűjtemény azonosítóját (összefüggésben). Azonosítója kerül az ügyfél.
  3. Pull kliens küld egy kérést, amely paraméterként az azonosító gyűjtemények és az elemek száma, hogy vissza kell adni. Mivel azonosító (kontextusban) szükséges paraméter, a Pull kérelmet csak akkor van értelme, miután a sikeres kérelem Enumerate. Ezért WS-számlálás protokollt jegyzőkönyv államokban.
  4. Válaszul a Pull kérést a szerver küld adatokat az ügyfélnek.
  5. Az ügyfél továbbra is küldjön egy vizsgálatot Pull, amíg választ kap az elem .
  6. Miután a felhasználó kiválasztott egy gyűjteményt a letölthető megy Get kérelmet.
  7. Válaszként a szerver küld egy példányt a kijelölt elem a gyűjteményben. A mi esetünkben ez lehet egy sablont, vagy XML-séma, vagy XML reprezentációja az adatokat.

SOAP üzenet Enumerate

Gépelt és típustalan adatok szerződéseket.

A könnyebb megértés kedvéért bevezetünk három fogalmat:

  1. Szerződés napja - egy adatstruktúra, amely leírja az XML-sémát.
  2. A beírt időpont, amikor a szerződés - az XML-séma + CLR típus, amely általában örökölt IXmlSerializable és serilizatsii amely bekapcsolja az XML dokumentum megfelel az XML-sémát.
  3. Nem írta be a dátumot a szerződés - csak XML-sémát. Például egy XML dokumentum megfelel az XML-sémát. Ebben eljárás egy dokumentum nincs meghatározva.

Ez az elkülönítés hasznos, ha egy világos elválasztása kliens és szerver részeket. Mivel a kliens oldalon nem függhet CLR típusú használt szerver által generáló XML dokumentumok, az ügyfél csak használni típustalan adatok szerződéseket. Ellenkező esetben, ha egy új időpontja a szerződés a szerveren, hogy frissíteni kell szerelni és az ügyfelek, annak érdekében, hogy adja hozzá a hiányzó CLR típus.

Így az ügyfél része működik egy nem típusos adatokat szerződések és a szerver gépelt.

végrehajtásának leírása:

Tegyük fel, hogy van egy adatbázis, és azt akarjuk, hogy végezzen az adatokat import egy adatbázis egy szerveren találhatóak az Excel munkafüzet található a kliens. Ebből a célból, a hátsó végén hozzá kell adnunk az időponttól a szerződés:

  • hozzon létre egy XML séma szerkezetét írja le az importált adatok az adatbázisban,
  • létrehozásához CLR típus megfelelő XML-séma,
  • eljárás végrehajtására DataContrac t [] Get DataContractName (), amely elvégzi a fellebbezést az adatbázis és az épület egy adatgyűjtés szerződések
  • Add utalás a módszer a szótár GetData módszer, és mint kulcsbeállítási NamespaceName + RootElementName XML sémát.

Key NamespaceName + RootElementName egyedi azonosítója a szerződés dátuma az egész rendszer (kliens - szerver).

Vegyük azt az esetet, amikor az ügyfél szeretné importálni az adatokat egy Excel-munkafüzetet. Az ügyfél végignézi az XML-térkép csatolt Excel munkafüzetet, és minden kártya küld EnumerateData kérést a szervernek, amely átmegy a paraméter azonosítója a szerződés dátumát. A szerver néz-e DataContract [] Get DataContractName () metódus végrehajtása a szerződés dátumát. Ha nem, akkor nem történik semmi. Ha igen, akkor a módszer Ge tDataContractName () kerül végrehajtásra és épített egy gyűjtemény amelyet át kell, hogy a kliens WS-számlálás protokollt.

Ellentétben, sablonok, akkor ne használja a WS-Transfer, és peredaom dátuma szerződés másolatának válaszul a Pull kérelmet.

Módosításainak mentése sablon és az adatok

Az Excel képes exportálni az adatokat. De ugyanakkor bevezetett néhány korlátozást az adattípusokat, amelyeket lehet eksportipovanny. Az alábbiakban felsorolunk néhány ilyen korlátozások:

  • Ha az áramköri elem tartalmaz egy olyan szekvenciát, majd MaxOccurs attribútum egyenlőnek kell lennie 1.
  • A típus nem tartalmazhat beágyazott listák (a listát a listák, az egyik elemek listája tartalmaz egy listát a többi elem).

Ha a típus megfelel a feltételeknek az export és végrehajtani egy módszert, hogy mentse az adatokat, majd meg tudjuk menteni a változtatásokat előállított Excel az adatbázisban.

Amikor elmenti a változásokat menti, mint a sablon, és az adatok változásait. Ez a művelet zajlik két szakaszból áll:

  • exportáló adatokat egy sablon
  • elküldi a sablon, és az exportált XML adatok szerver

Létrehozása a szerződés dátumát

Tegyük fel, hogy szeretnénk, hogy képes megjeleníteni egy Excel adatok olyan szerkezet, amely több beágyazott listák. Vegyük például: miR> Strany-> Régiók -> városok.

„Béke” a gyökér elem, amely az országok listája. Minden ország listáját tartalmazza területeken és egyes területeken a városok listája. Térkép adatok ehhez adattípus nézne ki:

A következő lépés, hogy hozzon létre a CLR típusú, amikor megkapjuk serilizatsii XML dokumentum megfelel a térképet. Ahhoz, hogy hozzon létre több beágyazott struktúrák kényelmes öröklik a stílus IXmlSerializable. Ennek eredményeként, a mi esetünkben, megkapjuk négy típusba sorolhatók:

Kapcsolódó cikkek