Reporting services 将Dynamicx AX 2012 SRSS PDF报告插入另一个数据库

Reporting services 将Dynamicx AX 2012 SRSS PDF报告插入另一个数据库,reporting-services,axapta,dynamics-ax-2012,Reporting Services,Axapta,Dynamics Ax 2012,我需要在AX2012中生成时将PDF报告插入链接数据库。当用户在AX中生成报告时,需要将副本插入另一个数据库。我不确定这是否可能。如果有任何URL或链接可以为我指明正确的方向,我将不胜感激。我不建议将blob直接存储在另一个数据库中。首先将数据保存在AX记录中,然后使用SSI或类似工具进行传输 更新:我没有注意到您问题中的SRSS部分,以下内容仅适用于旧式报告 第一步是生成PDF文件,可以像此方法一样完成,该方法返回一个容器,稍后保存: client container reportFileCr

我需要在AX2012中生成时将PDF报告插入链接数据库。当用户在AX中生成报告时,需要将副本插入另一个数据库。我不确定这是否可能。如果有任何URL或链接可以为我指明正确的方向,我将不胜感激。

我不建议将blob直接存储在另一个数据库中。首先将数据保存在AX记录中,然后使用SSI或类似工具进行传输

更新:我没有注意到您问题中的SRSS部分,以下内容仅适用于旧式报告

第一步是生成PDF文件,可以像此方法一样完成,该方法返回一个容器,稍后保存:

client container reportFileCreate(PurchReqQuickId _reqQuickId, Object caller, ReportName reportName)
{
    MenuFunction     mf;
    ReportRun        rr;
    PrintJobSettings pjs;
    Args             args;
    BinData          data;
    #File
    FileName         reportFile = WinAPI::getTempPath() + 'qr' + _reqQuickId + #pdf;
    ;
    new FileIOPermission(reportFile, 'r').assert();

    mf = new MenuFunction(reportName, MenuItemType::Output);
    args = new args(caller);
    args.record(this);

    rr = mf.create(args);
    rr.init();
    rr.report().interactive(false);
    rr.query().interactive(false);

    pjs = rr.printJobSettings();
    pjs.format(PrintFormat::PDF);
    pjs.setTarget(PrintMedium::File);
    pjs.fileName(reportFile);
    pjs.outputToClient(false);

    rr.run();

    data = new BinData();
    data.loadFile(reportFile);
    WinAPI::deleteFile(reportFile);

    return data.getData();
}