SSRS REPORT : Getting multiple select lookup of company(Legal Entity) in ssrs report
Contract class :
Class declaration
[
DataContractAttribute,
SysOperationContractProcessingAttribute(classStr(MZK_DemoUIBuilder))
]
public class MZK_DemoContract implements SysOperationInitializable, SysOperationValidatable
{
FromDate dateFrom;
ToDate dateTo;
List entity;
}
Parameters :
[
DataMemberAttribute(‘FromDate’),
SysOperationLabelAttribute(literalstr(“@SYS328562”)),
SysOperationHelpTextAttribute(literalstr(“@SYS328563”)),
SysOperationGroupMemberAttribute(‘Period’),
SysOperationDisplayOrderAttribute(‘1’)
]
public FromDate parmDateFrom(fromdate _dateFrom = dateFrom)
{
dateFrom = _dateFrom;
return dateFrom;
}
[
DataMemberAttribute(‘ToDate’),
SysOperationLabelAttribute(literalstr(“@SYS328564”)),
SysOperationHelpTextAttribute(literalstr(“@SYS328565”)),
SysOperationGroupMemberAttribute(‘Period’),
SysOperationDisplayOrderAttribute(‘2’)
]
public ToDate parmDateTo(ToDate _dateTo = dateTo)
{
dateTo = _dateTo;
return dateTo;
}
[
DataMemberAttribute(‘Entity’),
AifCollectionTypeAttribute(‘ Entity ‘, Types::String),
SysOperationLabelAttribute(literalstr(“Entity “)),
SysOperationHelpTextAttribute(literalstr(“Entity”))
]
public List parmEntity(List _ entity = entity)
{
entity = _ entity;
return entity;
}
public boolean validate()
{
boolean isValid = true;
return isValid;
}
UI BUILDER CLASS :
public class MZK_DemoUIBuilder extends SysOperationAutomaticUIBuilder
{
}
public void postRun()
{
MZK_DemoContract contract = this.dataContractObject();
}
public void postBuild()
{
DialogField dialogDateFrom;
DialogField dialogDateTo;
DialogField dialogEntity;
super();
// get dialog fields
dialogDateFrom = this.bindInfo().getDialogField(this.dataContractObject(),
methodStr(MZK_DemoContract, parmDateFrom));
dialogDateTo = this.bindInfo().getDialogField(this.dataContractObject(),
methodStr(MZK_DemoContract, parmDateTo));
dialogEntity= this.bindInfo().getDialogField(this.dataContractObject(),
methodStr(MZK_DemoContract, parmEntity));
dialogEntity.registerOverrideMethod(
methodStr(FormStringControl, lookup),
methodStr(MZK_DemoUIBuilder,lookup),
this);
if (dialogEntity)
{
dialogEntity.lookupButton(2);
}
}
public void initializeFields()
{
MZK_DemoContract contract = this.dataContractObject();
}
public void getFromDialog()
{
MZK_DemoContract contract = this.dataContractObject();
super();
}
public void build()
{
Dialog dialogLocal = this.dialog();
MZK_DemoContract contract = this.dataContractObject();
dialogLocal.addGroup(“@SYS40”);
this.addDialogField(methodStr(MZK_DemoContract,parmDateFrom), contract);
this.addDialogField(methodStr(MZK_DemoContract,parmDateTo), contract);
dialogLocal.addGroup(“Entity”);
this.addDialogField(methodStr(MZK_DemoContract,parmEntity), contract);
}
public void lookupEntity(FormStringControl _formStringControl)
{
Query query = new Query();
container cnt;
query.addDataSource(tableNum(CompanyInfo)).fields().dynamic(NoYes::No);
query.dataSourceTable(tableNum(CompanyInfo)).fields().addField(fieldNum(CompanyInfo,Name));
query.dataSourceTable(tableNum(CompanyInfo)).fields().addField(fieldNum(CompanyInfo,DataArea));
SysLookupMultiSelectGrid::lookup(query,_formStringControl,_formStringControl,cnt);
}