Insert(Index: Integer, Name: String, [Type: PrxSheetType =1]): IPrxSheet;
Insert(Index: integer; Name: string; Type: Prognoz.Platform.Interop.Report.PrxSheetType): Prognoz.Platform.Interop.Report.IPrxSheet;
Index. Индекс позиции листа;
Name. Наименование нового листа;
Type. Тип добавляемого листа, по умолчанию будет добавлен лист табличного типа.
Метод Insert осуществляет вставку нового листа в позицию, передаваемую посредством параметра Index.
Если значение параметра Type равно PrxSheetType.Table, возвращаемый методом Insert лист может быть приведен к интерфейсу IPrxTable, если равно PrxSheetType.Document - к интрефейсу IPrxDocument.
Для выполнения примера в репозитории предполагается наличие регламентного отчета с идентификатором REPORT.
Добавьте ссылки на системные сборки: Metabase, Report.
Sub UserProc;
Var
MB: IMetabase;
Report: IPrxReport;
Sheets: IPrxSheets;
Sheet: IPrxSheet;
i: Integer;
Begin
// Получаем текущий репозиторий
MB := MetabaseClass.Active;
// Получаем отчёт
Report := Mb.ItemById("REPORT").Edit As IPrxReport;
// Получаем листы отчёта
Sheets := Report.Sheets;
i := Sheets.Count;
// Вставляем текстовый лист
Sheet := Sheets.Insert(1, "Doc" + (i + 1).ToString, PrxSheetType.Document);
Debug.WriteLine("Вставлен текстовый лист " + Sheet.Name + ";");
// Сохраняем отчёт
(Report As IMetabaseObject).Save;
End Sub UserProc;
Imports Prognoz.Platform.Interop.Report;
…
Public Shared Sub Main(Params: StartParams);
Var
MB: IMetabase;
Report: IPrxReport;
Sheets: IPrxSheets;
Sheet: IPrxSheet;
i: integer;
Begin
// Получаем текущий репозиторий
MB := Params.Metabase;
// Получаем отчёт
Report := Mb.ItemById["REPORT"].Edit() As IPrxReport;
// Получаем листы отчёта
Sheets := Report.Sheets;
i := Sheets.Count;
// Вставляем текстовый лист
Sheet := Sheets.Insert(1, "Doc" + (i + 1).ToString(), PrxSheetType.pstDocument);
System.Diagnostics.Debug.WriteLine("Вставлен текстовый лист " + Sheet.Name + ";");
// Сохраняем отчёт
(Report As IMetabaseObject).Save();
End Sub;
В результате выполнения примера в отчёт вторым листом будет вставлен текстовый лист, в окно консоли будет выведена информация о вставке листа.
См. также: