将Dynamix AX 2012 SRSS PDF报告插入到另一个数据库中
问题描述:
我需要在AX2012中生成后,将PDF报告插入链接的数据库。当用户在AX中生成报表时,需要将副本插入到另一个数据库中。我不确定这是否可能。如果有任何URL或链接可以将我指向正确的方向,我将不胜感激。将Dynamix AX 2012 SRSS PDF报告插入到另一个数据库中
答
我不建议将BLOB直接存储在另一个数据库中。首先将数据保存在AX记录中,然后使用SSIS或类似的方法传输。
更新:我没有注意到您的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();
}