Документация HotXLS

Представления книги, подключения и XML-карты

В этом справочнике описываются редактируемые метаданные книги, находящиеся вне сетки ячеек, которые должны оставаться согласованными при изменении листов, диапазонов, фильтров и частей пакета

Классические пользовательские представления

TXLSWorksheet.CustomViews возвращает TXLSCustomViews, члены которого Count, Items, Invalidateи SyncToRaw сохраняют типизированные и неизвестные записи пользовательских представлений

TXLSCustomView exposes ViewId, Zoom, GridColorIndex, ActivePane, ShowPageBreaks, ShowFormulas, ShowGridLines, ShowHeadings, ShowOutlineSymbols, ShowZeroValues, CenterHorizontally, CenterVertically, PrintHeadingsпредоставляет PrintGridLines, FitToPage, FilterMode, AutoFilterVisible, FrozenPanes, FrozenNoSplit, SplitVertically, SplitHorizontally, TopLeftRow, TopLeftColumn, SplitX, SplitY, RightPaneColumn, BottomPaneRow, SelectionCount, Selections, HorizontalPageBreaks, VerticalPageBreaks, HasPageSetup, PaperSize, PrintScale, FirstPageNumber, FitToPagesWide, FitToPagesTall, PageSetupFlags, HorizontalResolution, VerticalResolution, HeaderMargin, FooterMargin, Copies, FilterFieldCount, FilterActive, FilterCriteria1, FilterCriteria2, FilterOperators, ClearFilterCriteria, RawRecordCount, RawRecordIdsи RawRecordData

TXLSCustomViewCellRange, TXLSCustomViewCellRanges, TXLSCustomViewSelectionInfo, TXLSCustomViewPageBreakи TXLSCustomViewPageBreaks переносят данные выделений и разрывов страниц, принадлежащие представлению

Окна книг XLSX

TXLSXWorkbook.WorkbookViews владеет упорядоченными записями TXLSXWorkbookView , настраиваемыми через TXLSXWorkbookViewVisibility

TXLSXWorkbookViewAssign, ActiveTab, FirstSheet, Visibility, Minimized, ShowHorizontalScroll, ShowVerticalScroll, ShowSheetTabs, XWindow, YWindow, WindowWidth, WindowHeight, TabRatio, AutoFilterDateGrouping, UnknownAttributesи Extensions
TXLSXWorkbookViewsAdd, Insert, Delete, Move, Clear, Countи Items

Вставка, удаление и перемещение листов пересчитывают активную и первую видимую вкладку каждого окна, сохраняя независимую геометрию и параметры отображения

Выделения по областям

TXLSXWorksheet.Selections возвращает TXLSXSelections; TXLSXSelectionPane определяет целевую область, а каждая TXLSXSelection хранит Pane, ActiveCell, ActiveCellIdи многообластное свойство Sqref

TXLSXSelection.Assign копирует одно выделение, а TXLSXSelections.Add, AddSelection, Assign, Clear, Delete, IndexOfPane, Countи Items поддерживают упорядоченную коллекцию представлений листа

Подмодели подключений

TXLSConnection сохраняет метаданные баз данных, веб-источников, текста и OLAP. Его веб-модель использует WebParsePre, WebHtmlTablesи WebTables; модель фиксированного текста использует TextSourceFile и TextFields; модель OLAP использует HasOlapProperties, OlapLocal, OlapLocalConnection, OlapLocalRefresh, OlapSendLocale, OlapRowDrillCount, OlapServerFill, OlapServerNumberFormat, OlapServerFont, OlapServerFontColor, OlapExtraAttributesXmlи OlapChildrenXml

SourceFile хранит источник подключения верхнего уровня, а TextSourceFile хранит независимый источник импорта textPr ; пустое значение TextSourceFile для совместимости возвращается к SourceFile for compatibility

TXLSWebTableSelectorKind настраивает TXLSWebTableSelector, члены которого Kind, Name, Index, ExtraAttributesXml, ChildrenXml, Assignи Validate сохраняют именованные, индексированные и полнотабличные селекторы

TXLSWebTableSelectors предоставляет Add, AddExisting, Assign, Validate, Delete, Clear, Count, Items, ExtraAttributesXmlи UnknownChildrenXml

TXLSTextImportFieldType настраивает TXLSTextImportField, члены которого FieldType, Position, ExtraAttributesXml, ChildrenXmlи Assignопределяют одно поле фиксированного текста Validate members define one fixed-text field

TXLSTextImportFields предоставляет Add, AddExisting, Assign, Validate, Delete, Clear, Count, Items, ExtraAttributesXmlи UnknownChildrenXml

Полные члены подключений

TXLSConnection — Id, TypeCode, SourceFile, OdcFile, SingleSignOnId, KeepAlive, Interval, BackgroundRefresh, RefreshOnLoad, SaveData, SavePassword, NewConnection, Deleted, OnlyUseConnectionFile, ReconnectionMethod, RefreshedVersion, MinRefreshableVersion, ConnectionString, CommandText, ServerCommandText, CommandType, Parametersи ExtensionXml

Веб-свойства — WebUrl, WebPost, WebEditPage, WebHtmlFormat, WebXml, WebSourceData, WebConsecutive, WebFirstRow, WebXl97, WebTextDates, WebXl2000, WebExtraAttributesXmlи WebChildrenXml

Текстовые свойства — TextSourceFile, TextPrompt, TextDelimited, TextCodePage, TextFirstRow, TextCharacterSet, TextQualifier, TextFileType, TextDecimal, TextThousands, TextTab, TextSpace, TextComma, TextSemicolon, TextConsecutive, TextDelimiter, TextExtraAttributesXmlи TextChildrenXml; для сохранения базы данных используются DbExtraAttributesXml и DbChildrenXml

TXLSConnections.Assign копирует коллекцию, IndexOfId находит стабильный идентификатор подключения, а RootAttributesXml вместе с UnknownChildrenXml сохраняют неподдерживаемое корневое содержимое

Параметры подключений

TXLSConnectionParameter использует Name, ParameterType, SqlType, RefreshOnChange, Prompt, CellReference, IntegerValue, DoubleValue, BooleanValue, StringValue, ValueKind, ExtraAttributesXmlи Assign

TXLSConnectionParameters предоставляет Add, AddExisting, Assign, Delete, Clear, Countи Items

Запросные таблицы и поля

TXLSQueryTable использует Assign, ConnectionId, ResultTableName, ResultRange, RowNumbers, DisableRefresh, BackgroundRefresh, FirstBackgroundRefresh, RefreshOnLoad, GrowShrinkType, FillFormulas, RemoveDataOnSave, DisableEdit, PreserveFormatting, Intermediate, AutoFormatId, ApplyNumberFormats, ApplyBorderFormats, ApplyFontFormats, ApplyPatternFormats, ApplyAlignmentFormats, ApplyWidthHeightFormats, PreserveSortFilterLayout, FieldIdWrapped, AdjustColumnWidth, HeadersInLastRefresh, MinimumVersion, UnboundColumnsLeft, UnboundColumnsRight, DeletedFields, SortStateXml, ExtensionXml, RefreshExtensionXmlи UnknownChildrenXml, ExtraAttributesXml, RefreshExtraAttributesXml, and RefreshUnknownChildrenXml

TXLSQueryTableField uses Idиспользует Name, TableColumnId, DataBound, RowNumbers, FillFormulas, Clipped, ExtraAttributesXml, Assignи Validate

TXLSQueryTableFields предоставляет Add, AddExisting, Assign, FindById, FindByTableColumnId, NextId, Validate, Deleteи Clear; Countкопирует коллекцию запросных таблиц листа Items; TXLSQueryTables.Assign копирует коллекцию таблиц запросов листа

Явное обновление таблиц запросов

Явное обновление без провайдера вызывающего кода, регистрации, нативных привязок и лимитов внешних операций описано в разделе автоматических поставщиков запросов

TXLSXWorksheet.RefreshQueryTable выбирает существующую таблицу запросов по имени или её индексу в коллекции с отсчётом от нуля и принимает принадлежащий вызывающему коду TXLSQueryTableProvider, положительный лимит AMaxRows (по умолчанию 1,000,000 строк данных) и необязательный callback TXLSQueryRefreshProgress

Реализуйте TXLSQueryTableProvider.Fetch(Connection, Query, MaxRows, out Data, var Abort), чтобы вернуть запись TXLSQueryResultData с ColumnCount и прямоугольными Rows из скалярных значений Variant; TXLSQueryResultRow — массив вариантов, а TXLSQueryResultRows — массив таких строк; строки не включают существующие заголовки и должны совпадать с шириной цели, числовые значения, даты, Boolean, строки, ошибки, пустые значения и null сохраняют свои типы, а строки, начинающиеся с =, остаются литеральными значениями

Провайдер получает отсоединённые снимки метаданных подключения и запроса, действительные только во время вызова, и обязан соблюдать лимит строк; библиотека отклоняет избыточные строки, рваные матрицы, неподдерживаемые типы значений, недопустимые ширины и результаты вне сетки листа 1,048,576 строк на 16,384 столбцов без усечения

Обновление сохраняет существующие заголовки и форматирование ячеек, очищает старый хвост данных сжимающегося результата, изменяет размер присоединённой таблицы Excel и поддерживаемых диапазонов фильтра или сортировки, обновляет метаданные таблицы запросов и инвалидирует зависимые вычисления; формулы и стили вне области результата остаются неизменными

Отключённый запрос, удалённое подключение, пересекающиеся объединённые ячейки или формулы массива, другая таблица или результат запроса, занятые ячейки расширения, вычисляемые столбцы таблиц, строки итогов, столбцы номеров строк, поведение fill-formula или несвязанные столбцы предотвращают обновление до изменения ячеек результата

Ход выполнения сообщается перед выборкой, перед применением результатов и после каждой применённой или очищенной строки; установите Abort в провайдере или callback хода выполнения, чтобы отменить, а возвращаемое значение 1 означает успех, 0 — отмену и -1 — сбой, причём диагностические коды 1401 и 1400 идентифицируют отмену и сбой под xlsOperationRefresh

Отмена или исключения провайдера, валидации или callback восстанавливают ячейки результата и метаданные запроса или таблицы, включая существующие дескрипторы ячеек; явные провайдеры вызывающего кода сами владеют своим внешним доступом; автоматический выбор поддерживаемых запросов Windows Text, ADO, ODBC и Web доступен через диспетчер книги, а открытие книги или сохранение метаданных RefreshOnLoad не вызывает ни один из путей провайдера

XML-карты и пользовательский XML

TXLSXWorkbook.XmlMaps возвращает TXLSXXmlMaps, а TXLSXWorksheet.XmlCellBindings возвращает коллекцию привязок ячеек листа

TXLSXXmlDataBindingХранит идентификатор связи и метаданные обновления, соединяющие карту с пользовательской XML-частью Enabled, DataBindingName, FileBinding, FileBindingName, ConnectionId, DataBindingLoadMode, and ExtensionXml mirror the OOXML dataBinding attributes
TXLSXXmlSchemaХранит один идентификатор схемы, пространство имён и сохранённую схему XML Id, SchemaRef, NamespaceUri, Language, and Xml round-trip the schema part
TXLSXXmlMapХранит идентичность карты, корневой элемент и пространство имён, а также её DataBinding; import behaviour is configured by RootElement, SchemaId, ShowImportExportValidationErrors, AutoFit, Append, PreserveSortAFLayoutХранит идентичность карты, корневой элемент и пространство имён, а также свойство PreserveFormat
TXLSXXmlMapsAddSchema, AddMap, FindSchema, FindMap, DeleteSchema, DeleteMap, Clear, Validate, SelectionNamespacesи SchemaCountTXLSXXmlCellBinding SchemasСопоставляет один диапазон листа с выражением XPath и идентификатором XML-карты MapCount
TXLSXXmlCellBindingПерегрузки CellReference, XPath, XmlDataType, MapId, XmlCellPropertyIdи ConnectionId, and UniqueName preserve the full OOXML binding
TXLSXXmlCellBindingsAdd overloads, Delete, Clear, Validate, Count, and Items
TXLSXCustomXmlPartAddSchemaRef связывает пользовательский XML-элемент со ссылкой на схему; Xml holds the item payload, ItemId the data-store item identifier, and SchemaRefs связывает элемент пользовательского XML со ссылкой на схему

Расширенные члены клонирования, HTML и изображений

TXLSXRangeClonePart, TXLSXRangeClonePartsи TXLSXRangeCloneSourceCounts определяют клонирование диапазонов с учётом зависимостей. TXLSXWorksheet.CaptureRangeCloneSourceCounts, AuthorizeRepeatedDisjointRangeClones, ResizeTableRowsи TileRangeAxisMetadata — расширенные хуки структурного редактирования, используемые расширением компилируемых отчётов и пользовательскими участниками

TXLSXHtmlExportSessionState описывает TXLSXHtmlExportSession; используйте BeginExport, ExportNextSheetи Reset, затем проверяйте State, Active, ExportedSheetCountи TotalSheetCount. Установите TXLSXHtmlExportOptions.IncludeDrawings , чтобы отображать поддерживаемые объекты листа в HTML-сеансе

TXLSXImage предоставляет Gamma, ShadowColor, ShadowOpacity, ShadowBlur, ShadowOffsetXи ShadowOffsetY для общего рендеринга PDF, SVG, HTML, растровых изображений и метафайлов

См. также