Вот пример связи таблиц на C# - reference связывает names
X++:
var interestingTypes = new[] { "Classes", "Tables" };
var xrefDb = new XrefDBDataContext(connectionString);
var coreReferences =
from reference in xrefDb.References
join targetName in xrefDb.Names on
reference.TargetId equals targetName.Id
join targetModule in xrefDb.Modules on
targetName.ModuleId equals targetModule.Id
join sourceName in xrefDb.Names on
reference.SourceId equals sourceName.Id
join sourceModule in xrefDb.Modules on
sourceName.ModuleId equals sourceModule.Id
where
(
targetModule.Name == "ElectronicReporting" ||
targetModule.Name == "ElectronicReportingCore" ||
targetModule.Name == "ElectronicReportingMapping" ||
targetModule.Name == "ElectronicReportingForAx" ||
targetModule.Name == "TaxEngine"
)
&&
reference.Kind == CrossReferenceKind.ClassExtended
select new
{
Reference = reference,
TargetName = targetName,
TargetModule = targetModule,
SourceName = sourceName,
SourceModule = sourceModule
};