importjsonfromdatetimeimportdatetimefromgroupdocs.assemblyimportDataSourceInfo,DocumentAssemblerdefparse_dates(item):# JSON has no dates: turn the order dates into datetime objects for the templateforkeyin("OrderDate","ShippingDate"):ifkeyinitem:item[key]=datetime.strptime(item[key],"%Y-%m-%dT%H:%M:%S")returnitemwithopen("customer.json",encoding="utf-8")asf:customer=json.load(f,object_hook=parse_dates)assembler=DocumentAssembler()assembler.assemble_document("single-row.msg","single-row-report.msg",[DataSourceInfo(customer,"customer"),DataSourceInfo("Harbor Lane Provisions <orders@harborlane.example>","sender"),DataSourceInfo(["Quayside Bistro <orders@quaysidebistro.example>","jonas.weber@harborlane.example"],"recipients"),DataSourceInfo("amara.osei@harborlane.example","cc"),DataSourceInfo("Single row","subject"),])
The following sample file is used in this example: single-row.msg
The following sample file is used in this example: customer.json