Vytvořte tabulku Excel z souborů XLM. Konverze souborů XML do formátů aplikace Excel

Microsoft Excel je pohodlný nástroj pro pořádání a strukturování široké škály dat. Umožňuje zpracovávat informace různými metodami, upravovat datová pole.

Zvažte jej pomocí souborů webových aplikací. Na specifický příklad Studujeme základy práce s XML v Excelu.

Jak vytvořit soubor XML z aplikace Excel

XML - standardní soubor pro přenos dat v síti. Excel podporuje svůj export a import.

Zvažte vytvoření souboru XML pomocí příkladu výrobního kalendáře.

  1. Uděláme tabulku, pro kterou chcete vytvořit soubor XML v aplikaci Excel a vyplňte jej s daty.
  2. Vytvořte a vložte kartu XML s potřebnou strukturou dokumentu.
  3. Exportujeme data tabulky do formátu XML.

Uložit do souboru XML.

Další způsoby, jak získat data XML (schémata):

  1. Stáhnout z databáze, specializované obchodní aplikace. Schémata mohou být poskytnuty komerčními místy, služby. Jednoduché možnosti jsou v otevřeném přístupu.
  2. Použití připravené vzorky Chcete-li zkontrolovat karty XML. Ve vzorcích - hlavní prvky, struktura XML. Kopírovat - Vložení do programu "Poznámkový blok" - Uložit s požadovaným rozšířením.


Jak uložit soubor aplikace Excel ve formátu XML

Jednou z možností:

  1. Tlačítko Office tlačítko. Vybereme si "Uložit jako" - "Ostatní formáty".
  2. Přidělíme jméno. Vyberte umístění uložení a typ souboru - XML.

Více možností:

  1. Stáhněte si XLC Converter v XML. Nebo najít službu, se kterou můžete exportovat online soubor.
  2. Download z oficiálních stránek Doplňky doplňků Microsoft Dodatek XML. Je zdarma.
  3. Otevřete novou knihu. Tlačítko Office - otevřeno.

Jak otevřít soubor XML v aplikaci Excel

Klepněte na tlačítko OK. Můžete pracovat s přijatými tabulkou, stejně jako s libovolným souborem aplikace Excel.

Jak převést XML soubor do aplikace Excel

Vytvořil tabulku Upravit a ukládat již ve formátu Excel.

Jak shromažďovat data z XML souborů v aplikaci Excel

Princip shromažďování informací z několika souborů XML je stejný jako princip transformace. Když importujeme data v aplikaci Excel, karta XML je současně přenesena. Můžete přenášet další data do stejného schématu.

Každý nový soubor bude připojen k dostupné mapě. Každý prvek v tabulkové struktuře odpovídá prvku na mapě. Je povolena pouze jedna vazebná data.

Chcete-li konfigurovat nastavení vazby, otevřete nástroj vlastností map v menu vývojáře.


Možnosti:

  1. Každý nový soubor bude kontrolován programem Excel pro dodržování předpisů. namontovaná mapa (Pokud vložíte zaškrtnutí této položky).
  2. Data lze aktualizovat. Do existující tabulky budou přidány nové informace (to má smysl, pokud potřebujete shromažďovat data z podobných souborů).

Jedná se o všechny ruční způsoby importu a exportu souborů.

Při práci s datovými daty se často objeví potřeba převodu na jiné formáty, tak, aby mluvila pro lepší interakci. Tento článek poskytuje možné konvertory XML v XLS. Jinými slovy, budeme hovořit o způsobech, jak změnit jeden formát do druhého.

Metoda 1: Použití programu Excel

Vzhledem k tomu, že aplikace Excel funguje bezchybně s Formátovým souborem bloku, pak může rozšíření XML otevřít bez problémů. Takže je možné bez míče svědomí říci, že Excel je konvertor XML v XL. Zvažte, jak přesto transformaci formátu s ním:

  1. Otevřete Excel.
  2. Na panelu klepněte na příkaz Soubor.
  3. Klikněte na otevřenou možnost.
  4. V okně "Explorer", které se zobrazí, přejděte do adresáře s XML souboru a otevřete jej.
  1. Otevřete záložku souboru znovu.
  2. Vyberte možnost "Uložit jako".
  3. Přejděte do adresáře, ke kterému musí být upravený dokument umístěn.
  4. V rozevíracím seznamu "Typ souboru" určete položku "Book Excel".
  5. Uložte soubor stisknutím příslušného tlačítka.

Po všech výše uvedených manipulacích se soubor, který zpočátku měl rozšíření XML, změní se na knihu aplikace Excel, to znamená, že bude mít rozšíření XLS.

Metoda 2: Možnost "Data Import" v aplikaci Excel

Excel - XML \u200b\u200bConverter v XLS se dvěma způsoby, jak provést tento úkol. Proto se obrátíme přímo na druhou variantu, což znamená použití možnosti "Import Data". Ale před zahájením je třeba povolit menu "vývojáře", protože je v něm, že je umístěn požadovaný nástroj. Dále musíte provést následující:

  1. Otevřete program.
  2. Přejděte do nabídky "Soubor".
  3. Postupujte podle sekce "Parametry".
  4. Otevřete menu nastavení pásky.
  5. Dejte značku vedle řetězce vývojáře, který je v pravém okně.
  6. Klepněte na tlačítko OK.

Požadovaný panel nástrojů je vložen do programového rozhraní, což znamená, že můžeme začít konverzi:

  1. Klepněte na kartu Vývojář.
  2. Na panelu nástrojů zvolte Import.
  3. Otevře se okno, ve kterém chcete vybrat soubor formátu XML.
  4. Zobrazí se okno s návrhem vytvořit schéma založené na datech. Klepněte na tlačítko OK.
  5. Poté se objeví druhé okno, ve kterém se musíte rozhodnout o umístění importované tabulky. Klikněte na buňku A1 a klepněte na tlačítko OK.

Soubor je importován do programu Excel. Nyní lze ušetřit jako XLS. Chcete-li to provést analogicky s předchozí instrukcí otevřete kartu Soubor, klepněte na tlačítko "Uložit jako", zadejte adresář, vyberte formát a uložte.

Metoda 3: S pomocí internetové služby

Může se stát, že budete potřebovat XLS Converter v XML pro DPH, například. V tomto případě aplikace Excel nepomůže a bude nutné kontaktovat jiný program. V tomto případě pojďme mluvit o online servisní convertio:

  1. V libovolném prohlížeči hlavní strana Tato služba.
  2. Vyberte způsob, jak stáhnout soubor. Pokud se nachází na disku, klepněte na tlačítko "Z počítače" a vyberte ji v správce souborů. Pokud v "cloud", vyberte samotné úložiště a poté soubor.
  3. Dokument je přidán a připraven k konverzi. Pro toto z rozevíracího seznamu musíte vybrat formát XML.
  4. Klepněte na tlačítko Převést.

Po tom bude soubor připraven a stačí jej stáhnout. Convertio není pouze XLS Converter na soubory XML. Je schopen pracovat s tím, kde velké množství formáty. Stačí stáhnout soubor a potom vyberte formát, ve kterém chcete transformovat.

Takže jsme přezkoumali konvertory XML v XLS a naopak. Jak si můžete poznamenat, že je skvělé pro převod XML program Excel.. Nicméně nemůže transformovat XLS, takže to vyžaduje uchýlit se k pomoci ostatních programů. V tomto případě se jedná o online službu Convertio Online.


Dlouho jsem pracoval s XML soubory, ale teprve teď jsem přemýšlel: jak personál Vytvořit a upravovat soubory XML v MS Excel? Excel je pohodlný a intuitivní nástroj pro vytváření, editaci a zpracování různých dat. Excel studuje ve škole a pravděpodobně neexistuje žádná osoba, která ví, jak pracovat na PC a nemá základy práce v aplikaci Excel. Proto podle mého názoru je to nejvhodnější nástroj, který lze doporučit jednoduchými uživateli vytvářet a upravovat datové soubory pro různé aplikace, včetně webových aplikací. Doma, MS Excel 2013 je nainstalován doma a na jeho příkladu budu popsat tyto jednoduché postupy, které je třeba provést při vytváření datového souboru XML v aplikaci Excel. Myslím, že v dřívějších verzích aplikace Excel bude také fungovat. Chcete-li vytvořit datový soubor XML, uděláme několik jednoduchých kroků. Zvažte je na příkladu vytváření datového souboru událostí.

1. Nejprve musíte vytvořit a vyplnit datovou tabulku v souladu s datovou strukturou. Použijte prosím, pro tuto položku menu Box / tabulka.

2. Vytvořte diagram souboru XML. Pro tento B. textový editor Představujeme následující řádky a uložíme je do souboru.

Xhtml.

0 0 0 0 Světlo vzkříšení Kristus. velikonoční 0 0 -7 0 -7 Vchod Pána v Jeruzalémě 1

0

0

0

0

Světlo vzkříšení Kristus. velikonoční

0

0

-7

0

-7

Vchod Pána v Jeruzalémě

1

3. Otevřete kartu VývojářKlikněte na tlačítko Zdroj A zadejte zdrojový soubor XML. V případě potřeby zapněte položku menu Vývojář V nastavení aplikace Excel.

4. Zbývá porovnat prvky obvodu a sloupce tabulky, přetažením položek do odpovídajících záhlaví sloupců.

5. A poslední krok: Exportujte data tabulky do souboru XML pomocí kontextového menu. Postavte se na libovolnou tabulku tabulky, klepněte pravým tlačítkem myši, vyberte XML / Export ... A uložte soubor XML pod požadovaným názvem.

Uložte soubor Excel pro následné úpravy a dodatky. Následné odstavce 1.-4. Nebude to nutné udělat!

P.S. Proč jsem napsal tuto banální poznámku? Za prvé, aby nezapomeň na sebe, a za druhé, myslím, že tyto informace budou užitečné pro uživatele, počínaje následující verzí 0.6 ;-)

Pokud někdo může odeslat soubor XML obsahující data v tabulkách, nemusíte si přečíst celý text a všechny úhlové závorky se značkami. Tento dokument si můžete stáhnout přímo do aplikace Excel, informovat Excel, jak zobrazit tento dokument a pracovat s daty pomocí karet.

V posledních několika letech jazyk XML (rozšíření značkovacího jazyka, písmena, "rozšiřitelný markup jazyk") se stal společným formátem sdílení informací a není nic neobvyklého, že lidé a organizace vysílají další soubory XML. Jednoduché struktury založené na XML činí extrémně jednoduchou výměnu informací a nezáleží na tom, zda všechny strany používají totéž software a prohlížeče. Až do nedávno, i když obecný xML Utilities. se rozšířil, vyplňte prostor mezi dokumenty XML a uživatelské rozhraní Bylo to dost těžké. Microsoft Excel zjednodušuje tento úkol pro alespoň data v tabulkové mřížce.

Vlastnosti aplikace Excel se používají v tomto triku, které jsou k dispozici pouze v aplikaci Excel pro Windows v průběhu roku 2003. Dřívější verze aplikace Excel je nepodporují; Tyto funkce nejsou podporovány ve stávajících a plánovaných verzích aplikace Excel pro Macintosh.

Začněme s jednoduchým dokumentem XML zobrazeného ve výpisu 8.1.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 < ?xml version- "1.0" encoding- "UTF-8" ?> < sales> < sale> < date> 2003 - 10 - 05 < isbn> 0596005385 < title> Off1ce 2003 XML ESSENTIA1S < priceus> 34.95 < quantity> 200 < customer IO= "1025" > Zork. "S knihami. 2003-10-05 0596002920 <priceus>39.95</priceus> <quantity>90</quantity> <customer ID="1025">Zork "</span>s knihami.</ customer> </ title></ sale> < sale> < date> 2003 - 10 - 05 </ date> < isbn> 0596002378 </ isbn> < title> Sax2.</ title> < priceus> 29.95 </ priceus> < quantity> 300 </ quantity> < customer ID= "1025" > Zork. <span>"S knihami.</customer> </sale> <sale> <date>2003-10-05</date> <isbn>0596005385</isbn> <title>Office 2003 XML Essentials 34.95 10 Knihy slávy. 2003-10-05 0596002920 39.95 25 Knihy slávy. 2003-10-07 0596002378 Sax2. 29.95 5 Knihy slávy. 2003-10-18 0596002378 Sax2. 29.95 15 Název Wave. 2003-10-21 0596002920 39.95 15 Knihy pro vás.

// Výpis 8.1. Jednoduchý dokument XML pro analýzu aplikace Excel< ?xml version-"1.0" encoding-"UTF-8"?> 2003-10-05 0596005385 Off1ce 2003 XML ESSENTIA1S 34.95 200 Zork "knihy 2003-10-05 0596002920 XML v kostce. 2. vydání <priceus>39.95</priceus> <quantity>90</quantity> <customer ID="1025">Zork "knihy</customer> 2003-10-05 0596002378 Sax2. 29.95 300 Zork "knihy 2003-10-05 0596005385 Office 2003 XML Essentials 34.95 10 Knihy slávy. 2003-10-05 0596002920 XML v kostce, 2. vydání 39.95 25 Knihy slávy. 2003-10-07 0596002378 Sax2. 29.95 5 Knihy slávy. 2003-10-18 0596002378 Sax2. 29.95 15 Název Wave. 2003-10-21 0596002920 XML v kostce. 2. vydání 39.95 15 Knihy pro vás.

Tento dokument lze otevřít přímo do aplikace Excel. Soubor → Otevřít (soubor → Otevřít). Otevře se dialogové okno (obr. 8.1).

Pokud vyberete přepínač XML seznam (jako seznam XML), zobrazí se varování, které aplikace Excel vytvoří vlastní diagram pro tento dokument, který nemá obvod (obr. 8.2).

Kliknutím na tlačítko OK uvidíte, která metoda Excel vybrala, aby odesílal informace v otevřeném dokumentu ve formě tabulky (obr. 8.3). Vezměte prosím na vědomí, že aplikace Excel očekává, že splní formát data, který se používá pro položku Datum, proto se data importovaná jako 2003-10-05 zobrazí jako 10/5/2003.

Nyní, že dokument je načten do aplikace Excel, můžete data zpracovávat stejným způsobem jako jakákoliv jiná data v aplikaci Excel - pro jejich vložení do vzorců, vytvářet pojmenované rozsahy, vytvářet grafy založené na obsahu atd. Abychom vám pomohli, v aplikaci Excel tam jsou několik vestavěných schopností analyzovat data.

Rozevírací seznamy ve sloupcích záhlaví sloupců umožňují zvolit metodu třídění dat (ve výchozím nastavení se data zobrazí v pořadí, ve kterém jsou zaznamenány ve zdrojovém dokumentu). Můžete také povolit zobrazení řádku výsledku (celkem); Chcete-li to provést, můžete použít panel nástrojů LIST nebo klepněte na tlačítko klikněte pravým tlačítkem myši myši kdekoli v seznamu a v kontextová nabídka Vyberte seznam příkazů → Seznam → Celkový řádek). Když se objeví řádek výsledků, můžete v rozevírací nabídce vybrat zobrazení konečných informací (obr. 8.4).

Obr. 8.4. Výběr výsledků pro seznam XML v Excelu

Data mohou být aktualizována přidáním informací z dokumentu XML do aktualizované oblasti ze stejné struktury. Pokud máte další dokument s takovou strukturou, můžete kliknout na seznam pravým tlačítkem myši, vyberte příkaz XML → Import v kontextovém menu a vyberte druhý dokument. Kromě toho, po úpravě, data mohou být exportována zpět do souboru XML klepnutím pravým tlačítkem myši na klepnutí pravým tlačítkem myši a výběrem příkazu XML → Export v kontextovém menu (XML → Export). Otočí Excel do velmi pohodlné úpravy nástroje pro jednoduché dokumenty XML s tabulkovou strukturou.

Pokud jsou data dost jednoduchá, můžete nejčastěji důvěřovat Excel Choice. Způsob zobrazení obsahu souboru a použít výchozí nastavení. Pokud jsou data složitá, zejména pokud obsahují data nebo text, který vypadá jako čísla, pak budete chtít použít schémata XML, které chcete zadat Excel, jak číst data a jaká data budou vhodná pro tuto kartu. Pro náš dokument může schéma XML vypadat ve výpisu 8.2.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 < ?xml version= "1.0" encoding= "UTF-8" ?> < xs: schema xmlns: xs= "http://www.w3.org/2001/xmlschema" ElementFormDefault \u003d "kvalifikovaný"\u003e< xs: element name= "sales" > < xs: complextype> < xs: sequence> < xs: element maxOccurs= "unbounded" ref= "sale" > < xs: element name= "sale" > < xs: complextype> < xs: sequence> < xs: element ref= "date" > < xs: element ref= "ISBN" > < xs: element ref= "T1tle" > < xs: element ref= "PriceUS" > < xs: element ref= "quantity" > < xs: element ref= "customer" > < xs: element name= "date" type= "xs:date" > < xs: element name= "ISBN" type= "xs:string" > < xs: element name= "Title" type= "xs:string" > < xs: e1ement name= "PriceUS" type= "xs:decimal" > < xs: element name= "quant1ty" type= "xs:integer" > < xs: element name= "customer" > < xs: complextype mixed= "true" > < xs: attribute name= "ID" use = "required" type= "xs:integer" >

// výpis 8.2. Schéma pro údaje o prodeji knih< ?xml version="1.0" encoding="UTF-8"?>

Všimněte si, že prvek datu je definován jako datum a prvek ISBN je definován jako řetězec, a nikoli jako celé číslo. Pokud začnete s otevřením tohoto schématu, nikoli dokumentu, pak nutit Excel ke stažení dokumentu uložením olova nula v ISBN.

Tentokrát vytvoříte seznam před stažením dokumentu XML, počínaje prázdnou plochou. Budete muset otevřít zdroj úlohy XML (XML zdroj). Pokud ještě není otevřeno, stiskněte kombinaci kláves CTRL + FL. Pak v rozevíracím seznamu výše uvedeného pole Úlohy vyberte zdroj XML (XML zdroj) a uvidíte něco podobného na Obr. 8.6.

Pro stažení schématu klepněte na tlačítko XML (XML Mapy). Otevře se dialogové okno XML (XML Mapy) (obr. 8.7).

Kliknutím na tlačítko Přidat otevřete schéma a vyberte schéma (obr. 8.8). Pokud schéma neomezuje dokumenty s jedním počátečním prvkem, zobrazí se dialogové okno s žádostí o vybrat kořenový prvek. Vzhledem k tomu, že dokumenty v tomto příkladu začínají prodejním prvkem, vyberte "Prodej".

Po klepnutí na tlačítko OK se zobrazí varování o možných obtížích s interpretací schémat. Schéma XML (XML schéma) je obrovská specifikace, která podporuje extrémně mnoho struktur, které nesplňují metodu vnímání informací v aplikaci Excel, takže existují určitá omezení v aplikaci Excel.

V dialogovém okně XML XML mapy aplikace Excel hlásí, že schéma bylo přidáno do tabulky. Pokud klepnete na tlačítko OK, vrátíte se na hlavní okno aplikace Excel a v oblasti úlohy zdroje XML (XML Source) se zobrazí diagram, který zobrazuje strukturu schématu. Nyní, když máte strukturu, můžete vytvořit seznam. Nejjednodušší způsob, jak udělat, je, zejména s malými dokumenty, jako naše, - přetáhněte ikonu prodeje na buňce A1.

Nyní, s vybaveným domem pro data, musíte ji vypořádat. Klepněte na tlačítko Import XML Data (Import XML Data) na panelu nástrojů Seznam (List) nebo klepněte pravým tlačítkem myši na seznam a klepněte pravým tlačítkem myši na tlačítko XML → Import v kontextovém menu (XML → Import). Pokud zvolíte soubor, který již byl otevřen dříve (ve výpisu 8.1), zobrazí se výsledek jako na Obr. 8.3. Věnujte pozornost přídavku předních nul na hodnoty, které jsou nyní textem, jak by mělo být.

Prvky mohou být přetaženy samostatně, pokud je chcete změnit na místech, nebo umístit různé fragmenty informací v různých místech tabulky.

Podpora pro karty XML a seznamy v aplikaci Excel znamená vytvářet elektronické tabulky pracující s daty, které vstupují do samostatné souboryS větší flexibilitou, než bylo s předchozím formátem, jako je CSV (s oddělovači čárkami) nebo separačním kartou.

Namísto připojení k databázi pro interaktivní úpravy dat bude uživatel schopen upravit soubor XML v letadle a převést jej zákazníkovi ihned po přistání. Snad nejlepším rysem nových funkcí XML Excel je jejich flexibilita. Zatímco data jsou organizována do struktury odpovídající tabulkové mřížce, Excel má poměrně trochu pravidla, na které mohou být vysílány typy XML. Kliknutím na myš několikrát a bez programování absolutně nic, můžete integrovat data XML do tabulek.

Při vývoji elektronického systému správy dokumentů bylo nutné implementovat funkce pro export dat v oblíbených formátech. Zejména v aplikaci Microsoft Excel formátu. Požadavky na vývoz byly docela jednoduché - exportní data s minimální formátování, tj. Žádné kombinované buňky, hry s fonty atd. XLSX Export formáty a Excel XML..

V tomto případě budu informovat o Excel XML.

Takže v jakémkoli systému operačních tabulkových dat, potřeba exportu dat. Cíle vývozu jsou jiné:

Hlavním požadavkem je implementovat ve třídě Sada funkcí pro záznam hodnoty buněk a řádků je hlavním požadavkem, který znamená vytváření funkcí pro záznam hodnot buněk zadaných typů a schopnost nahrávat hotový řádek soubor.

Schopnost pracovat s neomezenými údaji je samozřejmě samotnou vývozní třídu schopna odpovědět na zapisovatelný svazek, ale musí poskytovat funkce pro záznam dat na disk a vydání paměť s náhodným přístupem Pro další datovou část.

Kromě popsaných požadavků musíte přidat funkce služby:

  • Zapnutí autofiltra
  • Kompresní soubor v zipu.

Odbyt

V první řadě, při vytváření třídy, zkontrolujte název souboru koncového souboru a požádejte o počet sloupců a řádků. Soubor musí mít správný název a složka, ve které bude uložena, musí existovat. Všechno je jako obvykle.
Formát aplikace Excel XML umožňuje ukládat informace o uživateli v souboru, který jej vytvořil, tedy při vytváření titulu napsal název organizace, informace o uživateli a datum vytvoření data.

Veřejná funkce WritedocumentProperties ($ organizace \u003d , $ user \u003d null) (fwrite ($ toto-\u003e soubor, " "); jestliže (! is_null ($ user)) (fwrite ($ Toto-\u003e soubor," "$ User-\u003e popis.""); FWWrite ($ Toto-\u003e soubor," "$ User-\u003e popis."");) $ DT \u003d nový DateTime (); $ DT_STRING \u003d $ DT-\u003e Formát (" Y-M-D.: I: S \\ Z "); FWRITE ($ Toto-\u003e soubor", " "$ DT_STRING.""); FWWrite ($ Toto-\u003e soubor," "$ DT_STRING.""); pokud (!! IS_NULL ($ organizace))) FWRITE ($ Toto-\u003e soubor," . "$ Organizace-\u003e jméno.""); FWWrite ($ Toto-\u003e soubor," 12.00"); FWWrite ($ Toto-\u003e soubor,""); }
TRUE, to je v této funkci, že subjekty systému správy dokumentů jsou použity - organizace a uživatele (uživatele). Vyměňte tyto entity, řekněte, hodnoty řetězců, nikoli problém.

Nejzajímavější v názvu je informace o stylech. Ve formátu Excel XML jsou implementovány velmi pohodlné, takže jednoduše vytvořit tabulku se styly pro struny, data / čas a hypertextové odkazy.

Veřejná funkce WriteStyles () (FWRITE (FWRITE ($ Toto-\u003e soubor, ""); //default style fwrite($this->file, ""); // DateTime styl fwrite ($ Toto-\u003e soubor,""); FWWrite ($ Toto-\u003e soubor,""); FWWrite ($ Toto-\u003e soubor,""); // Hypertextový odkaz FWRITE ($ Toto-\u003e soubor,""); // odvážný fwrite ($ toto-\u003e soubor,""); FWWrite ($ Toto-\u003e soubor,""); }

Dokončeno přípravné práce, můžete přesunout na záznam dat. Otevření pracovního listu je jen pár značek, jen v tomto bodě používá informace o počtu sloupců a řádků.

Veřejná funkce OpenworkSheet () (FWRITE (FWRITE ($ Toto-\u003e soubor, " "); FWRITE ($ Toto-\u003e soubor, Strtr ("

", Array (" (COL_COUNT) "\u003d\u003e $ Toto-\u003e Colcount," (Row_count) "\u003d\u003e $ Toto-\u003e RowCount)))));
Ale zde je záznam řad - proces je zajímavější. Třída by měla pracovat rychle a zpracovávat neomezené množství dat, protože záznamy mohou být tisíce sto nebo dokonce milionu! Chcete rychlosti - práce s pamětí, chcete neomezené množství dat - práce s diskem. Chcete-li sladit požadavky, implementovány funkce resetrow a flushrow.
První - vymaže aktuální řádek, po kterém lze znovu doplnit, a druhá - zapíše aktuální řádek do otevřeného souboru na disku. Jejich sdílení vám umožní vydržet rovnováhu mezi rychlostí a množstvím použité paměti.

Public Function Resetrow () ($ Toto-\u003e Currrentrow \u003d Array ();) Public Function Flushrow () (FWRite (FWRite ($ Toto-\u003e soubor, implode ("", $ Toto-\u003e Currentrow)); UnsET ($ Toto-\u003e Currentrow);)
Každá buňka je zaznamenána funkcí odpovídajícího typu dat, a to AppendCellXXX, kde XXX je typ dat. Platné datové typy: num, řetězec, reálný, dateTime, datum, čas, odkaz. Příklad funkce pro nahrávání číselné hodnoty:

Veřejná funkce Appendecellnum ($ hodnota) ($ Toto-\u003e Currentrow \u003d " "$ Hodnota"."; }
Po záznamu všech dat zůstane zavřete pracovní list a sešit.

aplikace

Použití popsané třídy je založeno na exportu dat pomocí provozovatele CarraraDataprovider. Za předpokladu, že objem exportovaných dat může být velmi velký, speciální cdataprovideriterator iterátor, který prochází vrácená data na 100 záznamech (můžete určit jiný počet záznamů).

Veřejná funkce ExportExcelxml ($ organizace, $ Uživatel, & $ filename) ($ Toto -\u003e _ Poskytovatel \u003d New Carraydataprovider (/ * dotaz * /); yii :: Import ("ext.alxdexportExportExcelxml.alxdexportExcelxml"); $ export \u003d nový alxdexportExcelxml ($ filename, počet ($ toto -\u003e _ atributy), $ to -\u003e _ Poskytovatel-\u003e gettotalitemcount () + 1); $ export-\u003e Openwriter (); $ export-\u003e Openwworkbook (); $ export-\u003e Writedocumentproperties ($ organizace, $ user); $ export-\u003e writestyles (); $ export-\u003e OpenWorksheet (); // titul řádek $ export-\u003e resetrow (); $ export-\u003e Openrow (true); foreach ($ toto); -\u003e _ Atributy jako $ Code \u003d\u003e $ Formát) $ export-\u003e AppendcellSlent ($ Toto -\u003e _ ObjectDef-\u003e GetAtributelabel ($ Code)); $ Export-\u003e Closerow (); $ Export-\u003e Flushrow (); / / Datové řádky $ řádky \u003d nové cdataprovideriterator ($ toto -\u003e _ Poskytovatel, 100); foreach ($ řádky jako $ řádek) ($ export-\u003e resetrow (); $ export-\u003e Openrow (); foreach ($ toto -\u003e _ Atributy jako $ Code \u003d\u003e $ Format) (Přepínač ($ Format-\u003e Typ) (Case "Num": $ Export-\u003e AppendCellnum ($ řádek [$ Code]); / * Ostatní typy * / výchozí: $ export \u003e Append. Cellstring (""); )) $ export-\u003e closerow (); $ Export-\u003e flushrow (); ) // Zavřít vše $ export-\u003e CloseWorkSheet (); $ Export-\u003e CloseWorkbook (); $ export-\u003e CloseeWriter (); // ZIP soubor $ export-\u003e zip (); $ Filename \u003d $ export-\u003e getzipfullfilename (); )
V mém případě je každý řádek zaznamenán na disku, který je stále poměrně přijatelný, ale v budoucnu může vyžadovat změny. Například bude rozumné udržovat ne každou řadu a každou desetinu nebo dokonce sto řádků najednou. Pak se zvýší rychlost vývozu.

Rychlost

Mimochodem, bylo přesvědčeno o svých vlastních zkušenostech, jak důležité předpokládat, že možnost existence velkých částek dat v dávkové operaci, jako je vývoz.
Zpočátku se pokusil exportovat data