Using a Data Contract as a Data Member in D365FO
Example: Nested Data Contract
/// <summary>
/// Date data contract.
/// </summary>
[DataContractAttribute,
SysOperationGroupAttribute("DateGroup", "Date", "1"),
SysOperationGroupAttribute("OtherGroup", "Other", "2")]
class Sample2DataContract
{
FromDate fromDate;
ToDate toDate;
PurchId purchId;
[DataMemberAttribute, SysOperationGroupMemberAttribute("DateGroup")]
public FromDate parmFromDate(FromDate _fromDate = fromDate)
{
fromDate = _fromDate;
return fromDate;
}
[DataMemberAttribute, SysOperationGroupMemberAttribute("DateGroup")]
public ToDate parmToDate(ToDate _toDate = toDate)
{
toDate = _toDate;
return toDate;
}
[DataMemberAttribute, SysOperationGroupMemberAttribute("OtherGroup")]
public PurchId parmPurchId(PurchId _purchId = purchId)
{
purchId = _purchId;
return purchId;
}
}
Now we can use this contract inside another one:
/// <summary>
/// Sample data contract class.
/// </summary>
[DataContractAttribute]
class SampleDataContract
{
Sample2DataContract dataContract;
SalesId salesId;
[DataMemberAttribute('DataContract')]
public Sample2DataContract parmDataContract(Sample2DataContract _dataContract = dataContract)
{
dataContract= _dataContract;
return dataContract;
}
[DataMemberAttribute]
public SalesId parmSalesId(SalesId _salesId = salesId)
{
salesId = _salesId;
return salesId;
}
} How it looks in the UI