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.
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.
4. ábra: A protokoll kölcsönhatásokat, sablonok.
- A kliens küld kérést Enumerate.
- 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.
- 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.
- Válaszul a Pull kérést a szerver küld adatokat az ügyfélnek.
- Az ügyfél továbbra is küldjön egy vizsgálatot Pull, amíg választ kap az elem
. - Miután a felhasználó kiválasztott egy gyűjteményt a letölthető megy Get kérelmet.
- 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:
- Szerződés napja - egy adatstruktúra, amely leírja az XML-sémát.
- 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.
- 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: