Я работаю в формальном модуле с одним типом ссылок. Эти ссылки (мы называем это как ссылки типа X) выполняются на 4 уровнях глубины из 4 различных формальных модулей. Например, я работаю в модуле A, который имеет встроенные ссылки из модуля B, которые имеют встроенные ссылки из модуля C, которые имеют встроенные ссылки из модуля D.Показать столбцы DXL из других модулей
У меня есть представление, которое отображается в разных столбцах каждый уровень связи: Столбец 1: Глубина 1 ссылка (AB), Столбец 2: Глубина 2 ссылки (BC), Столбец 3: Глубина 3 ссылки (CD).
Каждый столбец порождается сценарием следующим образом:
pragma runLim, 0
int lines[4] = {0, 0, 0, 0}
void adjustLines(int depth, showAtDepth) {
int count
for (count = 0; count < 4; count++) {
while (lines[depth-1] < lines[count]) {
if (depth == showAtDepth) displayRich("\\pard " " ")
lines[depth-1]++
}
}
}
void showIn(Object o, int depth) {
Link l
LinkRef lr
ModName_ otherMod = null
Module linkMod = null
ModuleVersion otherVersion = null
Object othero
string disp = null
string s = null
string plain, plainDisp
int plainTextLen
int count
bool doneOne = false
string linkModName = "../links/TYPE X"
for lr in all(o<-linkModName) do {
otherMod = module (sourceVersion lr)
if (!null otherMod) {
if ((!isDeleted otherMod) && (null data(sourceVersion lr))) {
load((sourceVersion lr),false)
}
}
}
for l in all(o<-linkModName) do {
otherVersion = sourceVersion l
otherMod = module(otherVersion)
if (null otherMod || isDeleted otherMod) continue
othero = source l
if (null othero) {
load(otherVersion,false)
}
othero = source l
if (null othero) continue
if (isDeleted othero) continue
int oldLines = lines[depth-1]
adjustLines(depth, 1)
bool kick = (doneOne) && (lines[depth-1] == oldLines)
if (kick) {
lines[depth-1]++
if (depth == 1) displayRich("\\pard " " ")
}
if (depth < 4) {
showIn(othero, depth+1)
}
doneOne = true
if (depth == 1) {
s = name(otherMod)
if (isBaseline(otherVersion)) {
s = s " [" versionString(otherVersion) "]"
}
s = "{\\b " s " : }"
s = s " " probeRichAttr_(othero,"Object Heading", false)
s = s " " probeRichAttr_(othero,"Object Text", false)
displayRich s
}
lines[depth-1] += 3
}
}
showIn(obj,1)
Однако в настоящее время, я должен добавить новый столбец, который содержит другой тип линии связи (тип Y), образованного между модулем C и другим новым модулем сделать не связанный напрямую с моим модулем (A). К счастью, у меня есть эти отношения в столбце в модуле C (как макет dxl).
Как я могу показать в своем модуле (A) этот столбец, сохраненный в виде модуля (C), который будет сохранен в моем текущем представлении?
Заранее спасибо за сотрудничество и помощь
Я думаю, что самым простым решением было бы сделать макет DXL у вас в модуле C атрибутом DXL. Если вы конвертируете Layout DXL в атрибут DXL, вы можете просто вызвать его непосредственно из вашего макета DXL в модуле A. Если вы разместите свой макет DXL из модуля C, я могу помочь вам изменить его для работы в качестве атрибута DXL. –