Умный импорт и размещение данных с помощью маркеров Smart в Python через .Net

Вступление

Умные маркерыиспользуются, чтобы сообщить Aspose.Cells, какую информацию помещать в электронную таблицу конструктора Excel Microsoft. Смарт-маркеры позволяют создавать шаблоны, содержащие только определенную информацию и форматирование.

Дизайнерская электронная таблица и смарт-маркеры

Электронные таблицы конструктора — это стандартные файлы Excel, которые содержат визуальное форматирование, формулы и интеллектуальные маркеры. Они могут содержать интеллектуальные маркеры, которые ссылаются на один или несколько источников данных, таких как информация из проекта и информация для связанных контактов. Умные маркеры записываются в ячейки, где вы хотите получить информацию.

Все смарт-маркеры начинаются с &=. Примером маркера данных является &=Party.FullName. Если маркер данных приводит к более чем одному элементу, например, к полной строке, то следующие строки автоматически перемещаются вниз, чтобы освободить место для новой информации. Таким образом, промежуточные итоги и итоги могут быть размещены в строке сразу после маркера данных, чтобы производить расчеты на основе вставленных данных. Чтобы выполнить вычисления для вставленных строк, используйтединамические формулы.

Умные маркеры состоят изисточник данных иимя полячастей для получения большей информации. Специальную информацию также можно передавать с помощью переменных и массивов переменных. Переменные всегда заполняют только одну ячейку, тогда как массивы переменных могут заполнять несколько. Используйте только один маркер данных на ячейку. Неиспользуемые смарт-маркеры удаляются.

Умный маркер также может содержать параметры. Параметры позволяют изменить способ представления информации. Они добавляются в конец смарт-маркера в круглых скобках в виде списка, разделенного запятыми.

Параметры смарт-маркера

&=Источник данных.ИмяПоля &=[Источник данных].[Имя поля]&=$Имя переменной &=$ПеременныйМассив &==Динамическая формула &=&=Повторить динамическую формулу

Параметры

Допускаются следующие параметры:

  • не добавить - Не добавляйте дополнительные строки для соответствия данным.
  • пропустить:н - Пропустить n строк для каждой строки данных.
  • по возрастанию: п или жепо убыванию: п - Сортировка данных в смарт-маркерах. Если n равно 1, то столбец является первым ключом сортировщика. Данные сортируются после обработки источника данных. Например: &=Таблица1.Поле3(по возрастанию:1).
  • горизонтальный - Записывайте данные слева направо, а не сверху вниз.
  • числовой - Преобразование текста в число, если это возможно.
  • сдвиг - Сдвиг вниз или вправо, создание дополнительных строк или столбцов для соответствия данным. Параметр сдвига работает так же, как и в Microsoft Excel. Например, в Microsoft Excel при выборе диапазона ячеек щелкните правой кнопкой мыши и выберитеВставлять и указать?сдвинуть ячейки вниз, сдвинуть ячейки вправо и другие варианты. Короче говоря,сдвиг Параметр выполняет ту же функцию для вертикальных/нормальных (сверху вниз) или горизонтальных (слева направо) интеллектуальных маркеров.
  • копистайл - Скопируйте стиль базовой ячейки во все ячейки в этом столбце.

Параметры noadd и skip можно комбинировать для вставки данных в чередующиеся строки. Поскольку шаблон обрабатывается снизу вверх, вы должны добавить noadd в первую строку, чтобы избежать вставки дополнительных строк перед альтернативной строкой.

Если у вас несколько параметров, разделите их запятыми, но без пробела: параметр A, параметр B, параметр C.

На следующих снимках экрана показано, как вставлять данные в каждую вторую строку.

Файл шаблона Выходной файл
дело:изображение_альтернативный_текст дело:изображение_альтернативный_текст

Динамические формулы

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

Динамические формулы позволяют использовать следующие дополнительные параметры:

  • r - Текущий номер строки.
  • 2, -1 — смещение до текущего номера строки.

Например:

 &=&=B{-1}/C{-1}~(skip:1)

В маркере динамической формулы «-1» обозначает смещение к текущей строке в столбцах B и C соответственно, которое будет установлено для операции деления, параметр пропуска равен одной строке. Кроме того, мы должны указать следующий символ:

 "~"

в качестве символа-разделителя для применения дополнительных параметров в динамических формулах.

На следующих снимках экрана показана повторяющаяся динамическая формула и результирующий рабочий лист Excel.

Файл шаблона Выходной файл
дело:изображение_альтернативный_текст дело:изображение_альтернативный_текст
Cell “C1” содержит формулу**= А1*В1** , ячейка “C2” содержит**= А2*В2** а ячейка “C3” содержит**= А3*В3**.

Обрабатывать умные маркеры очень легко. Далее следует фрагмент кода Python через .Net, который показывает, как это делается.