SSRS Reprot (RDP)

[
    SRSReportQueryAttribute(queryStr(InventCostReport)),
    SRSReportParameterAttribute(classStr(InventCostReportContract))
]
class InventCostReportDP extends SrsReportDataProviderPreProcess
{
    [
       [SRSReportDataSetAttribute(tableStr(InventCostTmpTransBreakdown))]
    ]
   //在vs中的数据源  一般为临时表
   public InventCostTmpTransBreakdown getInventCostTmpTransBreakdown()
    {
    select inventCostTmpTransBreakdown;
    return inventCostTmpTransBreakdown;
    }

    // 重写方法 实现自己的逻辑
    [SysEntryPointAttribute(false)]
    public void processReport()
    {

    }
}

以上为DP类。

[
    DataContractAttribute,
    SysOperationContractProcessingAttribute(classStr(InventCostReportUIBuilder),         SysOperationDataContractProcessingMode::CreateSeparateUIBuilderForEachContract),
    SysOperationGroupAttribute('AxisGroup', "@SYS118176", '2'),
    SysOperationGroupAttribute('CostDistributionGroup', "@SYS118179", '3'),
    SysOperationGroupAttribute('DetailGroup', "@SYS53422", '4')
]
public class InventCostReportContract
{
    DateCode                    dateCode;
    FromDate                    fromDate;
    ToDate                      toDate;
    
    InventDimViewContract       inventDimViewContract;
    InventCostDateCodeContract  inventCostDateCodeContract;
    SRSCatalogItemName          reportName;


    [
    DataMemberAttribute('InventCostDateCodeContract'),
    SysOperationDisplayOrderAttribute('1')
    ]
    public InventCostDateCodeContract             parmInventCostDateCodeContract(InventCostDateCodeContract _inventCostDateCodeContract =         inventCostDateCodeContract)
    {
    inventCostDateCodeContract = _inventCostDateCodeContract;

    return inventCostDateCodeContract;
    }
    
    [
        DataMemberAttribute('InventDimViewContract')
    ]
    public InventDimViewContract parmInventDimViewContract(InventDimViewContract     _inventDimViewContract = inventDimViewContract)
    {
    inventDimViewContract = _inventDimViewContract;

    return inventDimViewContract;
    }
    
    [
        DataMemberAttribute('ReportName')
    ]
    public SRSCatalogItemName parmReportName(SRSCatalogItemName _reportName = reportName)
    {
    reportName = _reportName;

    return reportName;
    }
}

以上为contract类

class InventCostReportController extends SrsReportRunController
{
    #define.costValueReportPrefix       ('InventCostValue.')
    #define.costVariancesReportPrefix   ('InventCostVariances.')
    #define.reportPostFix               ('Report')


    public void preRunModifyContract()
    {
    InventCostReportContract    inventCostReportContract;

    inventCostReportContract = this.parmReportContract().parmRdpContract() as         InventCostReportContract;
            inventCostReportContract.parmSite(InventCostReportController::getSite(this.parmReportContra        ct().parmQueryContracts().lookup(this.getFirstQueryContractKey())));
        inventCostReportContract.parmReportName(this.parmReportName());

    this.parmReportContract().parmReportName(this.parmReportName());

     // SrsReportHelper::addParameterValueRangeToQuery();
    }
    
    

}

以为为controller类

class InventCostReportUIBuilder extends SrsReportDataContractUIBuilder
{
    DialogField             detailField;
    DialogField             levelField;

    public void build()
    {
        FormBuildGroupControl       formBuildGroupControl;
        SrsReportRunController      myController;

        formBuildGroupControl = dialog.curFormGroup();
        formBuildGroupControl.columns(2);

        super();

        // Hide site
        this.bindInfo().getDialogField(this.dataContractObject(),     methodStr(InventCostReportContract, parmSite)).visible(false);

    // IncludeBeginning is not shown on variances report
    myController = this.controller();
    if (myController.parmReportName() == ssrsReportStr(InventCostVariances, Report))
    {
        this.bindInfo().getDialogField(this.dataContractObject(), methodStr(InventCostReportContract, parmIncludeBeginning)).visible(false);
    }

    // Get dialog fields for visibility checks
    levelField = this.bindInfo().getDialogField(this.dataContractObject(), methodStr(InventCostReportContract, parmLevel));
    detailField = this.bindInfo().getDialogField(this.dataContractObject(), methodStr(InventCostReportContract, parmDetail));
    this.setVisibilityForSelectionControls();
    }
    public void postRun()
    {
    super();

    dialog.dialogForm().formRun().controlMethodOverload(false);
    detailField.registerOverrideMethod(methodStr(FormStringControl, modified), methodStr(InventCostReportUIBuilder, detailModified), this);
    }
public boolean detailModified(FormStringControl _control)
{
    boolean ret;

    ret = _control.modified();

    if (ret)
    {
        this.setVisibilityForSelectionControls();
    }

    return ret;
}
}

以上为UIBuilder类

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值