G
Guest
У меня есть форма, которая формирует выборку (в личные папки) запрошенных документов (см. рис).
Все верхние поля заполняются списком, а вот последние три...
ЦФО заполняется в соотвествии с разрешениями сотрудника (есть такая форма учетная запись и формы разрешений).
ЦФУ любая.
Сотрудник - все сотрудники, которые имеют возможность создавать бюджеты, для выбранных/ой в ЦФО служб/ы.
В этом поле просто страшный код на формулах:
Что делать? Как можно корректно переписать этот код, чтобы в зависимости от текущего количества служб он нормально отрабатывал?
Все верхние поля заполняются списком, а вот последние три...
ЦФО заполняется в соотвествии с разрешениями сотрудника (есть такая форма учетная запись и формы разрешений).
Код:
Kod:=@Trim(@Explode(Razr_Sotr;";"));
@If(@IsError(Kod);"";"ВСЕ":Kod)
ЦФУ любая.
Сотрудник - все сотрудники, которые имеют возможность создавать бюджеты, для выбранных/ой в ЦФО служб/ы.
В этом поле просто страшный код на формулах:
Код:
@If(!@IsNull(SRazr_CFO);
@Do(
@If(@IsMember("ВСЕ";SRazr_CFO);list:=@Trim(@Explode(Razr_Sotr;";"));list:=SRazr_CFO);
list2 := @Unique(@DbLookup("":"NoCache";"":"";"(PermissionNaz)";"ОБЩИЕ РАСХОДЫ / ДОХОДЫ";2));
@If(@IsError(list2);"";@If(@IsMember("ОБЩИЕ РАСХОДЫ / ДОХОДЫ";list);Kod:= Kod:@Unique(@DbLookup("":"NoCache";"":"";"(PermissionNaz)";"ОБЩИЕ РАСХОДЫ / ДОХОДЫ";2));""));
list2 := @Unique(@DbLookup("":"NoCache";"":"";"(PermissionNaz)";"КОММЕРЧЕСКАЯ СЛУЖБА ПО ОКАЗАНИЮ ФОТОУСЛУГ И ТОРГОВЛИ ФОТОТОВАРАМИ";2));
@If(@IsError(list2);"";@If(@IsMember("КОММЕРЧЕСКАЯ СЛУЖБА ПО ОКАЗАНИЮ ФОТОУСЛУГ И ТОРГОВЛИ ФОТОТОВАРАМИ";list);Kod:= Kod:@Unique(@DbLookup("":"NoCache";"":"";"(PermissionNaz)";"КОММЕРЧЕСКАЯ СЛУЖБА ПО ОКАЗАНИЮ ФОТОУСЛУГ И ТОРГОВЛИ ФОТОТОВАРАМИ";2));""));
list2 := @Unique(@DbLookup("":"NoCache";"":"";"(PermissionNaz)";"АДМИНИСТРАТИВНАЯ СЛУЖБА";2));
.... и тд
@If(@IsError(Kod);"";"ВСЕ":@Sort(@Unique(Kod)))
);"")
Что делать? Как можно корректно переписать этот код, чтобы в зависимости от текущего количества служб он нормально отрабатывал?