public override void BuilderReportSqlAndTempTable(IRptParams filter, string tableName)
        {
            base.BuilderReportSqlAndTempTable(filter, tableName);
            List <SqlParam> listParam = new List <SqlParam>();

            Kingdee.BOS.Orm.DataEntity.DynamicObject customFilter = filter.FilterParameter.CustomFilter;
            tmpTbName = tableName.Substring(0, 20);

            //快捷过滤
            if (filter.FilterParameter.CustomFilter != null)
            {
                string blnOrgId = "0";
                Kingdee.BOS.Orm.DataEntity.DynamicObject mObj = customFilter["F_JZSL_OrgId"] as Kingdee.BOS.Orm.DataEntity.DynamicObject;
                blnOrgId = mObj["Id"].ToString();
                if (blnOrgId != "0")
                {
                    SqlParam sqlParamstartdate = new SqlParam("@in_useOrgId", KDDbType.String, blnOrgId);
                    listParam.Add(sqlParamstartdate);
                }
                string FMaterialID = "";
                if (customFilter["F_JZSL_Base"] != null)
                {
                    mObj        = customFilter["F_JZSL_Base"] as Kingdee.BOS.Orm.DataEntity.DynamicObject;
                    FMaterialID = mObj["Id"].ToString();
                }
                if (FMaterialID != "")
                {
                    SqlParam sqlParamstartdate = new SqlParam("@in_material", KDDbType.String, FMaterialID);
                    listParam.Add(sqlParamstartdate);
                }
                //获取到需要判断的值
                string DateValue = (customFilter["F_JZSL_Date"] == null) ? string.Empty : Convert.ToDateTime(customFilter["F_JZSL_Date"]).ToString("yyyy-MM-dd HH:mm:ss");

                if (DateValue != string.Empty)
                {
                    SqlParam sqlParamstartdate = new SqlParam("@in_datetime", KDDbType.DateTime, DateValue);
                    listParam.Add(sqlParamstartdate);
                }
            }
            SqlParam tablename = new SqlParam("@in_tbName", KDDbType.String, tmpTbName);

            listParam.Add(tablename);

            string sql = "/*dialect*/ exec rep_xs_sku_matching @in_tbName";

            DBUtils.Execute(Context, sql, listParam);
            string sSQL = @"select *, {0} into {1} from {2}";

            KSQL_SEQ = string.Format(KSQL_SEQ, "AreaFNAME asc");
            sSQL     = string.Format(sSQL, this.KSQL_SEQ, tableName, tmpTbName);
            DBUtils.Execute(Context, sSQL);
            DBUtils.Execute(Context, "drop table " + tmpTbName);
        }
Esempio n. 2
0
        public override void BuilderReportSqlAndTempTable(IRptParams filter, string tableName)
        {
            base.BuilderReportSqlAndTempTable(filter, tableName);
            Kingdee.BOS.Orm.DataEntity.DynamicObject customFilter = filter.FilterParameter.CustomFilter;
            //快捷过滤
            StringBuilder sqlwhere = new StringBuilder();

            if (filter.FilterParameter.CustomFilter != null)
            {
                sqlwhere.AppendLine(@"/*dialect*/ where ");
                string blnOrgId = "0";
                Kingdee.BOS.Orm.DataEntity.DynamicObject mObj = customFilter["F_JZSL_OrgId"] as Kingdee.BOS.Orm.DataEntity.DynamicObject;
                blnOrgId = mObj["Id"].ToString();
                sqlwhere.AppendFormat(@"/*dialect*/ FORGID = {0} ", blnOrgId);

                string FMaterialID = "";
                if (customFilter["F_JZSL_Base"] != null)
                {
                    mObj        = customFilter["F_JZSL_Base"] as Kingdee.BOS.Orm.DataEntity.DynamicObject;
                    FMaterialID = mObj["Id"].ToString();
                    sqlwhere.AppendFormat(@"/*dialect*/ and FMATERIALID = {0} ", FMaterialID);
                }

                //获取到需要判断的值
                string DateValue = (customFilter["F_JZSL_Date"] == null) ? string.Empty : Convert.ToDateTime(customFilter["F_JZSL_Date"]).ToString("yyyy-MM-dd HH:mm:ss");
                sqlwhere.AppendFormat(@"/*dialect*/ and FYEAR = YEAR('{0}') ", DateValue);
            }

            string sql = "/*dialect*/ exec rep_xs_fqy_matching";

            DBUtils.Execute(Context, sql);
            string sSQL = @"select *, {0} into {1} from fqy {2}";

            KSQL_SEQ = string.Format(KSQL_SEQ, "FAreaNAME asc");
            sSQL     = string.Format(sSQL, this.KSQL_SEQ, tableName, sqlwhere);
            DBUtils.Execute(Context, sSQL);
            DBUtils.Execute(Context, "drop table fqy");
            InitSettingInfo();
        }