Пробовала делать по примеру, через executeQuery править связь. Но толи что то напутала, то ли это совсем не в тему
PHP код:
public void executeQuery()
{
// QueryBuildRange parentTypeRange;
QueryBuildDataSource qbdS;
str queryExpression = '(';
queryExpression += strfmt('((%1 == %2) && (%3 == %4)) || ((%5 == %6) && (%7 == %8)) || ((%9 == %10) && (%11 == %12))',
fieldid2name(tablenum(smmActivityParentLinkTable), fieldnum(smmActivityParentLinkTable, ParentType)),
queryValue(enum2int(smmActivityParentType::Customer)),
fieldid2name(tablenum(smmActivityParentLinkTable), fieldnum(smmActivityParentLinkTable, RefRecId)),
queryValue(CustTable::findByPartyId(smmBusRelTable.PartyId).RecId),
fieldid2name(tablenum(smmActivityParentLinkTable), fieldnum(smmActivityParentLinkTable, ParentType)),
queryValue(enum2int(smmActivityParentType::Quotation)),
fieldid2name(tablenum(smmActivityParentLinkTable), fieldnum(smmActivityParentLinkTable, RefRecId)),
fieldstr(SalesQuotationTable, RecId),
fieldid2name(tablenum(smmActivityParentLinkTable), fieldnum(smmActivityParentLinkTable, ParentType)),
queryValue(enum2int(smmActivityParentType::QuotationLine_ZTR)),
fieldid2name(tablenum(smmActivityParentLinkTable), fieldnum(smmActivityParentLinkTable, RefRecId)),
fieldstr(SalesQuotationTable, RecId));
//queryValue(CustTable::findByPartyId(SalesQuotationLine.PartyId).RecId));
// this.query().dataSourceTable(tablenum(smmActivityParentLinkTable)).clearDynalinks();
// this.query().dataSourceTable(tablenum(smmActivityParentLinkTable)).clearRange(fieldnum(smmActivityParentLinkTable, ParentType));
queryExpression += ')';
qbdS = this.query().dataSourceNo(1);
queryBuildRange.value(queryExpression);
super();
// Set button states
//
activityButtonGroup.setButtons();
}