IPrxFlash.ShockWaveFlash

Синтаксис Fore

ShockWaveFlash: IShockWaveFlash;

Синтаксис Fore.NET

ShockWaveFlash: IShockWaveFlash;

Описание

Свойство ShockWaveFlash использует свойства и методы интерфейса IShockWaveFlash для работы с Flash-объектом.

Пример Fore

Для выполнения примера предполагается наличие регламентного отчета c идентификатором «REGULAR_REPORT», на активном листе которого расположен только Flash-объект. Подключите системные сборки: Fore, Forms, Io (ForeIO для примера Fore.NET), Metabase, Report, Tab.

Sub UserProc;
Var
    MB: IMetabase;
    MObj: IMetabaseObject;
    CrInfo: IMetabaseObjectCreateInfo;
    Doc: IDocument;
    MemStr: IMemoryStream;
    Sheet: IPrxTable;
    Fl: IPrxFlash;
    Report: IPrxReport;
Begin
    MB := MetabaseClass.Active;
    CrInfo := MB.CreateCreateInfo;
    CrInfo.ClassID := MetabaseObjectClass.KE_CLASS_DOCUMENT;
    CrInfo.Id := 
"Flash_Document";
    CrInfo.Name := 
"Flash_Document";
    CrInfo.Parent := MB.Root;
    CrInfo.Permanent := 
True;
    MObj := MB.CreateObject(CrInfo).Edit;
    Doc := MObj 
As IDocument;
    Report := MB.ItemById(
"REGULAR_REPORT").Bind As IPrxReport;
    Sheet := Report.ActiveSheet 
As IPrxTable;
    Fl := Sheet.TabSheet.Objects.Item(
0).Extension As IPrxFlash;
    MemStr := 
New MemoryStream.Create;
    Fl.ShockWaveFlash.SaveToStream(MemStr);
    Doc.LoadFromStream(MemStr);
    MObj.Save;
    
Dispose MemStr;
End Sub UserProc;

После выполнения примера Flash-объект, расположенный на активном листе регламентного отчета, будет сохранен в объект репозитория «Документ» с идентификатором «Flash_Document».

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.Fore;
Imports Prognoz.Platform.Interop.ForeIO;
Imports Prognoz.Platform.Interop.Forms;
Imports Prognoz.Platform.Interop.Report;
Imports Prognoz.Platform.Interop.Tab;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    MObj: IMetabaseObject;
    CrInfo: IMetabaseObjectCreateInfo;
    Doc: IDocumentEx;
    MemStr: System.IO.MemoryStream;
    Sheet: IPrxTable;
    Fl: IPrxFlash;
    Report: IPrxReport;
Begin
    MB := Params.Metabase;
    CrInfo := MB.CreateCreateInfo();
    CrInfo.ClassId := MetabaseObjectClass.KE_CLASS_DOCUMENT 
As Int32;
    CrInfo.Id := 
"Flash_Document";
    CrInfo.Name := 
"Flash_Document";
    CrInfo.Parent := MB.Root;
    CrInfo.Permanent := 
True;
    MObj := MB.CreateObject(CrInfo).Edit();
    Doc := MObj 
As IDocumentEx;
    Report := MB.ItemById[
"REGULAR_REPORT"].Edit() As IPrxReport;
    Sheet := Report.ActiveSheet 
As IPrxTable;
    Fl := Sheet.TabSheet.Objects.Item[
0].Extension As IPrxFlash;
    MemStr := 
New System.IO.MemoryStream();
    Fl.ShockWaveFlash.SaveToStream(MemStr);
    Doc.LoadFromStdStream(MemStr);
    MObj.Save();
    MemStr := 
Null;
End Sub;

См. также:

IPrxFlash