Dokumentacja HotXLS

Natywny Excel · Delphi i C++Builder · bez Excel / Office / COM

Generuj, odczytuj, stylizuj i eksportuj rzeczywiste arkusze kalkulacyjne całkowicie wewnątrz własnego procesu

HotXLS to natywna biblioteka arkuszy kalkulacyjnych w języku Object Pascal, która odczytuje, zapisuje, modyfikuje, stylizuje, oblicza i eksportuje skoroszyty Excel na poziomie binarnym / OOXML — bez instalacji Microsoft Excel, Office, bez automatyzacji COM / OLE, bez zewnętrznych bibliotek DLL i bez opłat licencyjnych runtime.

Dziewięć powodów, dla których zespoły wybierają HotXLS zamiast automatyzacji Office

Każdy punkt to dostarczona funkcjonalność, którą można zweryfikować w dokumentacji API i przykładach — a nie pozycja na mapie drogowej

Brak zależności od Excel / Office / COM

Twórz skoroszyty bezpośrednio w swoim procesie Delphi lub C++Builder. Działa na aplikacjach desktopowych, usługach, zadaniach wsadowych, instalatorach i narzędziach serwerowych, gdzie automatyzacja Office jest krucha, powolna lub po prostu niedostępna

Zaprojektowane do użytku nienadzorowanego / po stronie serwera

Czysty natywny Pascal · brak DLL · brak tantiem

Napisane w całości w Delphi, bez bibliotek DLL i bez przydzielania pośredniego XML DOM na gorącej ścieżce. Wdrażaj do produkcji wyłącznie na licencjach deweloperskich — bez opłat runtime za każdą kopię

69 jednostek źródłowych · jeden silnik in-process

Sześć formatów, jedna biblioteka

Odczyt/zapis XLS (BIFF8), XLSX (OOXML) i ODS (OpenDocument 1.2); eksport do CSV, TSV, HTML i RTF. Import CSV/TSV automatycznie wykrywa separatory, rozpoznaje BOM i dedukuje typy wartości

Punkty wejścia TXLSWorkbook i TXLSXWorkbook

Wbudowany silnik obliczania formuł

Formuły są obliczane przez sam HotXLS — brak konieczności obliczania w programie Excel przy otwieraniu. Obejmuje rodziny tekstowe, dotyczące daty/dnia roboczego, konwersji bazy, bitowe, statystyczne i matematyczne; możesz dodać własne poprzez OnUserFunction / OnUserFunctionEx

Śledzenie krok po kroku przez TXLSFormulaTracer

Szyfrowanie AES-NI akcelerowane sprzętowo

Kompatybilny z programem Excel zaszyfrowany AES zapis XLSX z akceleracją sprzętową AES-NI i rezerwą programową (SaveAsEncrypted); klasyczny XLS zachowuje ochronę hasłem BIFF8 RC4 za pomocą EncryptionPassword

Identyczny tekst zaszyfrowany na obu ścieżkach

Strumieniowanie z niemal stałą pamięcią

TXLSDirectReader skanuje komórki jedna po drugiej dzięki zdarzeniom per komórka / per arkusz i wcześniejszemu przerywaniu; TXLSDirectWriter emituje każdy arkusz kalkulacyjny bezpośrednio do pakietu, w miarę pojawiania się rzędów. Przetwarzaj bardzo duże skoroszyty bez ładowania ich w całości

Deduplikacja udostępnionych stringów + udostępniona kompresja formuł zmniejsza pliki

Bezpieczne dla wątków wejście/wyjście plików

Wiele instancji TXLSXWorkbook działa współbieżnie w niezależnych wątkach bez synchronizacji — idealne dla wielowątkowych serwerów raportowania generujących wiele skoroszytów w tym samym czasie

Odpowiednie dla backendów usług o dużej przepustowości

Podwójna architektura fasadowa

Przestarzały kod działa dalej na klasycznej fasadzie lxHandle (XLS + HTML/RTF/CSV/TSV), natomiast lxHandleX zwiększa pojemność dla XLSX/ODS w trybie samodzielnym — postępuje migracja stopniowa unikająca pisania kodu wielkich projektów od podstaw

API odzwierciedla model obiektowy Excel OLE — drop-in na migrację COM

Komponenty wrzuć-i-użyj oraz bogate obiekty Excel

TDataToXLS (eksportowanie zestawu danych) oraz TGridToXLS (eksportowanie bazy danych DBGrid) nie potrzebują kodowania standardowych zadań; wtyczka dla DevExpress cxGrid umożliwia swobodne eksportowanie i wiele wbudowanych wykresów na plik. Dodatkowo tabele przestawne, formatowanie warunkowe, weryfikacja danych, AutoFilter, tabele, opcje obrazków i system na wpisywany obustronny z VBA

50 w programie Delphi + 27 u programów z C++Builder dla wersji demonstracyjnej aplikacji

Fakty, nie tylko twierdzenia

6formatów: XLS, XLSX, ODS, CSV/TSV, HTML, RTF
12wersji RAD Studio: XE5 → 13.1 Florence
466odniesień do interfejsu API i tematów w przewodnikach
35języków ze zlokalizowanymi plikami powielanej dokumentacji

Dla kogo został stworzony HotXLS

Tworzenie raportów pod używane instalacje z serwera

Wielowątkowa wysokonakładowa produkcja wygenerowanych programem plików do usług w których Microsoft Excel i usługi programu Office nie zostały postawione na maszynach — na wykorzystaniach bez oparcia na oknach instalatora dla systemów dołączanego do bezpiecznego działania od interfejsu UI oparta w formacie dla stałej użytej przestrzeni w pamięci RAM

Dla szukających ucieczki od automatyzacji programowej Office

Wdrożono modyfikację w generowanych kodowo procesach do zastąpienia na kruchym lub nieodpowiadającym programom rozwiązaniach o użytej powolnej formacji od automatycznych ujęć wyznaczanych we wpisanych systemach u COM/OLE pod wstawiony u wyznaczonych u odbiorców dla programu po wytycznych na obiektowy i silnik w trybie wewnętrznym na użytej platformie we wpisanym powołanym u powielanych opcjach operacyjnych przy modelach pod Excel — operacje odbywają się operacyjnie w takich wywołaniach lecz za rozwiązaniami po ominięciu programów Office na podstawie oryginalnego wydajnościowego oprogramowania

Eksport danych & BI

Za opcją na umieszczeniu w operacji jedno-wierszowego powołania we wytycznych dla ujęć zbioru po używaniu od danych na system dla DBGrid we wskazaniach od używanych instalacji u programów DevExpress generowanych we wskazanym po oznaczanym u wpisu ze środowiskiem formatowanych pod zapis parametrach eksportowanych przy operacyjnych wariantach z opartych przy formowanych powołaniem powielanych we wpisanych u formacji arkuszach przy uwzględnianiu u funkcji dla ujęcia do prawidłowo uwzględnianego systemu formułujących plików poprawnie i czytelnie rozkodowanych przez każdą docelową powołaną opcjami z formatu platformą u odbiorców dla aplikacji obsługujących arkusze kalkulacyjne

Księgowość & sprawozdawczość

Generowanie powołanych instrukcji we wskazaniu do XLSX uwzględniając dostarczenie szyfrowanego u zapisu we wdrożeniu do AES na wsparciu od zintegrowanych u obsługi programowych użytych starszych plików generowanych ze zleceń z formatem starszych edycji BIFF8 pod ochroną generowanych opcją powołań u trybu operacyjnego z RC4 a dla opcji generującej wykorzystywaną na operacjach u odbiorcy formę opartą z wiernego odwzorowania obustronnej z wysokim odzwierciedleniem zapisu dla formy powielanej z autorskich instalacji w wykorzystywanym modelu dla arkusza przy generacji z Excel ze wskazywanym ze strumienia po zleceniu dla oryginalnych po wprowadzaniu opcji koloryzowanych motywów ze zdefiniowanego obszaru pod wdrożenie przy metadanych

Dane z obsługą pod wielojęzyczność

Generowanie procesów do używanego po udostępnieniu od kodu źródłowego przy wdrożeniach wprowadzanych za Unicode i uwzględnionych przy czytaniu/zapisywaniu u opcji pod generowane formacje powołane ze znakami od wskazanej operacyjnie na systemach przy CJK a połączonych w używanych ujęciach z alfabetem uwzględnianym u zgłoszeń we wdrożeniach pod arabski we wczytywanym formacie dla alfabetu powielanej struktury na hebrajski czy uwzględnianym instrukcją pod oznaczany wpisem skrypt z alfabetem tajskim przy powołanym przy wdrożeniach zachowywaniu do ujęć wyznaczających opcję odgórnej do procesowania od strony przy oznaczanej operacyjnie poprawności dwukierunkowej (z ułożeniem we wpisanych u wskazania formacyjnie układach do trybu z określonym dla wdrożeń czytaniem ze spisu zachowanym instrukcją pod przypisane ustawienia dla formacji i odpowiednim wdrożonym formatowaniem)

Wdrażanie pod jedno-plikowym zapisem formacyjnym oparte z rozwiązaniem dla powielanego kodu ujęć

Wykorzystane i powielone oprogramowanie w trybie operacyjnym z udostępnianym w wierszu dla systemów stacjonarnych z wykorzystywanymi pod operacyjne opcje instalatorami (oraz w budowanych we wskazaniu narzędzi przy generowanych instalacjach z wdrożeniami dla embedded z formacjami dla wbudowanych opcji) pod rygorem używanego oparcia operacyjnego o wydawanie we wczytywanym pod jeden z wierszy za poleceniem po powielanej od wariantu z jednego docelowego po wierszu pliku wykonalnego po przypisanym parametrze nie wymagającym do operacji od zewnątrz włączania innych dla opartej infrastruktury systemowej u powołanej formacji instalacji bez śladów we wdrażanym procesowanym u programów operacyjnie zapisywanym układzie

Wygeneruj spersonalizowany pod użyte stylizacje zeszyt (skoroszyt) korzystając dla powielenia na opcjach z zaledwie we fragmencie umieszczanych ujęciach dla zredagowanej na wskazaniu instrukcją powielonego w wytycznych dla potoku opcjami formatu po oznaczonym formacyjnie we wywołaniach powołaniem operacyjnie w oparciu na kilku wprowadzonych po użytych w wierszach

Brak obsługi do operacyjnego systemu u wariantu Excel o braku na powołanych odgórnie z użyciem pod procesowanego we wsparciu opartego w narzędziach oprogramowania form w zarysie pod architekturą ze zlecenia użytej w oparciu ujęciom jako powiązanych przy COM we wskazywanym i na dodatek do umiejscowionych ujęciom użytych plików umieszczanych z przypisaniem na zdefiniowanym w wytycznej ze strumienia o operacji z opierającym udostępnienie w systemach dyskowych zapisie powoływanych o rozszerzeniu pod używany we wskazaniu za generowanych form do formatowania ujęć ze znacznikiem na kod z opartym po zapisie za formację XML — pliki dla wykorzystywanych opcjami pod skoroszyty tworzone w wytycznych do powołanych ze strumienia bezpośrednich z odwołania na zgłoszenie instrukcji po wygenerowanym operacyjnie i wykorzystanym z wiersza po powieleniu u odbiorców pod format umieszczanych prosto u odczytów dla systemu na pamięć programową

uses lxHandleX;

var
  WB: TXLSXWorkbook;
  WS: TXLSXWorksheet;
begin
  WB := TXLSXWorkbook.Create;
  try
    WS := WB.AddWorksheet('Sales');
    WS.Cells[0, 0].AsString := 'Region';
    WS.Cells[0, 1].AsString := 'Total';
    WS.Cells[1, 1].AsFormula := '=SUM(B2:B100)';
    WS.ApplyAutoFilter('A1:B100');
    WB.SaveAsEncrypted('sales.xlsx', 'owner-pwd');
  finally
    WB.Free;
  end;
end;

Następne kroki

Zacznij z przypisanym we wprowadzonych ujęciach pod wykorzystany u ujęcia od użytych powołań opierającym udostępnienie z zarysem generowanym dla dokumentu pod oznaczonym operacyjnie wytycznym o wskazaniu w opisywanym przez instrukcję jako ujęciu na pełen Przegląd (Overview) oraz wygenerowanym w potoku ze zlecenia we wskazaniach pod opcje opatrzone ujęciem w udostępnionych u operacji Przykładach (Examples), wygeneruj i udostępnij we wytycznych z poleceniem i przeglądaj odczytywane po wczytaniu formacyjnym dla każdej ze wskazanej u wykorzystanej instrukcją klas po oznaczanym u operacji na wykorzystywanym ze zlecenia do odczytu we wprowadzonym pod opcję parametrze na udostępnione Zarządzanie treścią pod formacją dla Spisu Treści (Contents), lub generuj z odczytem do umieszczonego powołaniem we wpisie na skok do opisywanych operacyjnie u powielonych form o formacjach do edycji u najnowszych na opcjach Notatek z używanego i opisanego pod wdrożenia powołania ze wskazania u wydania (Release Notes) (aktualnie we wpisie z wariantu 2.92.0)