Printout Report#
|
Creating and exporting printout reports:
Keywords:
printout report template PDF export report list |
from pathlib import Path
from dlubal.api import common, rfem
with rfem.Application() as rfem_app:
rfem_app.close_all_models(save_changes=False)
rfem_app.create_model(name='printout_report')
base_data_modif = rfem_app.get_base_data()
base_data_modif.addons.steel_design_active = True
rfem_app.set_base_data(base_data=base_data_modif)
rfem_app.create_printout_report(
name='Input data',
load_from_template='Input data and reduced results',
)
rfem_app.create_printout_report(
name='Steel Design',
load_from_template='Steel Design',
)
report_list = rfem_app.get_printout_report_info_list()
print(report_list)
for report in report_list.printout_report_info:
filepath = Path(f"{report.name}.pdf").resolve()
rfem_app.export_printout_report_to(
printout_report_no=report.id,
filepath=str(filepath),
export_attributes=common.printout_report.PdfExportAttributes()
)
using Common = Dlubal.Api.Common;
using Google.Protobuf.WellKnownTypes;
ApplicationRfem? rfemApp = null;
try
{
rfemApp = new ApplicationRfem();
rfemApp.close_all_models(saveChanges: false);
rfemApp.create_model(name: "printout_report");
var baseDataModif = rfemApp.get_base_data();
baseDataModif.Addons.SteelDesignActive = true;
rfemApp.set_base_data(baseData: baseDataModif);
rfemApp.create_printout_report(
name: "Input data",
loadFromTemplate: "Input data and reduced results"
);
rfemApp.create_printout_report(
name: "Steel Design",
loadFromTemplate: "Steel Design"
);
var reportList = rfemApp.get_printout_report_info_list();
Console.WriteLine(reportList);
foreach (var report in reportList.PrintoutReportInfo)
{
var filepath = Path.GetFullPath($"{report.Name}.pdf");
rfemApp.export_printout_report_to(
printoutReportNo: report.Id,
filepath: filepath,
exportAttributes: Any.Pack(new Common.PrintoutReport.PdfExportAttributes())
);
}
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
finally
{
if (rfemApp != null) rfemApp.close_connection();
}