Hi,
i'm exporting an entity by code, right now i'm only getting one record in the exported file, i think i need to do queryRun.Next() but how will i do that and pass query.pack in the export method having all values?
#DMF
SharedServiceUnitFileID fileId;
DMFDefinitionGroupName definitionGroupName = "MyUniqueDefinitionGroupName";
try
{
EntityName entityName = DMFEntity::findFirstByTableId(tableNum(SalesInvoiceHeaderV2Entity)).EntityName;
str f = "#FieldGroupName_AllFields";
// Start:Optional if you want to filter data while exporting
Query query = new Query(DMFUtil::getDefaultQueryForEntity(entityName));
QueryBuildDataSource qbds = query.dataSourceTable(tableNum(SalesInvoiceHeaderV2Entity));
DMFEntityExporter exporter = new DMFEntityExporter();
fileId = exporter.exportToFile(entityName,
definitionGroupName,
'', //Optional: ExecutionID
"XML-Attribute", //Optional::SourceName
f, //Optional field selection
query.pack(), //Optional: Filtered Query
curExt() //Optional: DataAReaId
);
if (fileId != '')
{
str downloadUrl = DMFDataPopulation::getAzureBlobReadUrl(str2Guid(fileId));
System.Uri uri = new System.Uri(downloadUrl);
str fileExt;
if (uri != null)
{
fileExt = System.IO.Path::GetExtension(uri.LocalPath);
}
Filename filename = strFmt('MyFirstExport%1',fileExt);
System.IO.Stream stream = File::UseFileFromURL(downloadUrl);
File::SendFileToUser(stream, filename);
}
else
{
throw error("DMF execution failed and details were written to the execution log");
}
}
catch
{
error("error occurred while exporting");
}