|
|
|
@ -0,0 +1,414 @@ |
|
|
|
using System; |
|
|
|
using System.Collections.Generic; |
|
|
|
using System.Linq; |
|
|
|
using System.Text; |
|
|
|
using System.Web.UI.WebControls; |
|
|
|
using Forks.EnterpriseServices.DataForm; |
|
|
|
using Forks.EnterpriseServices.DomainObjects2; |
|
|
|
using Forks.EnterpriseServices.DomainObjects2.DQuery; |
|
|
|
using TSingSoft.WebControls2; |
|
|
|
using BWP.Web.Layout; |
|
|
|
using BWP.B3UnitedInfos.BO; |
|
|
|
using BWP.Web.Utils; |
|
|
|
using System.Security; |
|
|
|
using System.Web.UI.HtmlControls; |
|
|
|
using BWP.Web.WebControls; |
|
|
|
using BWP.B3Frameworks; |
|
|
|
using BWP.B3Frameworks.Utils; |
|
|
|
using BWP.B3Frameworks.BO; |
|
|
|
using System.Collections.Specialized; |
|
|
|
using BWP.B3UnitedInfos; |
|
|
|
using Forks.EnterpriseServices.SqlDoms; |
|
|
|
using TSingSoft.WebPluginFramework; |
|
|
|
using System.Web.UI; |
|
|
|
using System.Collections; |
|
|
|
|
|
|
|
namespace BWP.Web.Pages.B3YunKen.Reports { |
|
|
|
public class YunKenStoreDetailQuery : DFGridReportPage |
|
|
|
{ |
|
|
|
protected override string QueryOptionsTabName |
|
|
|
{ |
|
|
|
get |
|
|
|
{ |
|
|
|
return "选项"; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
bool MergeOptionSelected(string option) |
|
|
|
{ |
|
|
|
return OptionIsSelected("合并", option); |
|
|
|
} |
|
|
|
|
|
|
|
bool ShowOptionSelected(string name) |
|
|
|
{ |
|
|
|
return OptionIsSelected("显示字段", name); |
|
|
|
} |
|
|
|
|
|
|
|
protected override void AddQueryOptions(VLayoutPanel vPanel) |
|
|
|
{ |
|
|
|
AddQueryOption("显示字段", new string[] { "会计单位", "仓库", "属性分类", "存货属性", "产品线", "品牌", "货位","品牌项","存货编码","存货名称","批号","规格", "产地", "简称", "主单位", "辅数量", "辅单位", "辅数量II", "辅单位II", "单价", "金额", "生产日期", "保质天数", "有效日期", "入库日期", "库龄", "产品线分类" }, new string[0]); |
|
|
|
|
|
|
|
|
|
|
|
AddOtherQueryOptionControls(); |
|
|
|
|
|
|
|
base.AddQueryOptions(vPanel); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
CheckBox showGoodsPropertyCatalogLevel = null; |
|
|
|
DropDownList goodsPropertyCatalogLevel = null; |
|
|
|
bool TryGetGoodsPropertyCatalogLevel(out int level) { |
|
|
|
level = default(int); |
|
|
|
|
|
|
|
if (showGoodsPropertyCatalogLevel == null || goodsPropertyCatalogLevel == null |
|
|
|
|| !showGoodsPropertyCatalogLevel.Checked || string.IsNullOrEmpty(goodsPropertyCatalogLevel.SelectedValue) |
|
|
|
) { |
|
|
|
return false; |
|
|
|
} |
|
|
|
level = int.Parse(goodsPropertyCatalogLevel.SelectedValue); |
|
|
|
return true; |
|
|
|
} |
|
|
|
|
|
|
|
private void AddOtherQueryOptionControls() { |
|
|
|
var maxDepth = TreeUtil.GetMaxDepth<GoodsPropertyCatalog>(); |
|
|
|
if (maxDepth == null) { |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
var placeHolder = new PlaceHolder(); |
|
|
|
showGoodsPropertyCatalogLevel = new CheckBox() { Text = "属性分类等级" }; |
|
|
|
placeHolder.Controls.Add(showGoodsPropertyCatalogLevel); |
|
|
|
mQueryControls.Add("ShowGoodsPropertyCatalogLevel", showGoodsPropertyCatalogLevel); |
|
|
|
|
|
|
|
placeHolder.Controls.Add(new LiteralControl(" 显示到")); |
|
|
|
|
|
|
|
goodsPropertyCatalogLevel = new DropDownList(); |
|
|
|
for (var i = 1; i <= maxDepth.Value; i++) { |
|
|
|
goodsPropertyCatalogLevel.Items.Add(new ListItem(i.ToString() + "级", i.ToString())); |
|
|
|
} |
|
|
|
mQueryControls.Add("GoodsPropertyCatalogLevel", goodsPropertyCatalogLevel); |
|
|
|
goodsPropertyCatalogLevel.SelectedValue = string.Empty; |
|
|
|
placeHolder.Controls.Add(goodsPropertyCatalogLevel); |
|
|
|
|
|
|
|
AddOtherQueryOptionControls("其他显示字段", placeHolder); |
|
|
|
} |
|
|
|
|
|
|
|
protected override string Caption { |
|
|
|
get { return "耘垦库存查询"; } |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
JoinAlias goodsAlias { |
|
|
|
get { |
|
|
|
return JoinAlias.Create("goods"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
JoinAlias storeAlias |
|
|
|
{ |
|
|
|
get |
|
|
|
{ |
|
|
|
return JoinAlias.Create("store"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void AddColumn(DQueryDom query, IDQExpression expresion, string name, bool isNumber=false) |
|
|
|
{ |
|
|
|
if (isNumber) |
|
|
|
{ |
|
|
|
expresion = DQExpression.Sum(expresion); |
|
|
|
} |
|
|
|
query.Columns.Add(DQSelectColumn.Create(expresion, name)); |
|
|
|
if (!isNumber) |
|
|
|
{ |
|
|
|
query.GroupBy.Expressions.Add(expresion); |
|
|
|
} |
|
|
|
ColumnNames.Add(name); |
|
|
|
if (isNumber) |
|
|
|
{ |
|
|
|
SumColumnNames.Add(name); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
protected override DQueryDom GetQueryDom() { |
|
|
|
|
|
|
|
var query = base.GetQueryDom(); |
|
|
|
|
|
|
|
JoinAlias goodsBatchAlias = new JoinAlias("goodsBatch",typeof(GoodsBatch)); |
|
|
|
query.From.AddJoin(JoinType.Left, new DQDmoSource(goodsBatchAlias), |
|
|
|
DQCondition.EQ(goodsBatchAlias, "ID", query.From.RootSource.Alias, "GoodsBatch_ID")); |
|
|
|
|
|
|
|
var goodsProperty = goodsAlias.EJoin<GoodsProperty>(query, aliasName: "goodsProperty"); |
|
|
|
var goodsPropertyCatalog = goodsProperty.EJoin<GoodsPropertyCatalog>(query, aliasName: "goodsCatalog"); |
|
|
|
var goods = JoinAlias.Create("goods"); |
|
|
|
TreeUtil.AddTreeCondition<GoodsPropertyCatalog>(query, mQueryContainer, "GoodsPropertyCatalog_ID", goodsPropertyCatalog); |
|
|
|
|
|
|
|
|
|
|
|
query.Where.Conditions.Add(DQCondition.EQ(storeAlias, "Domain_ID", DomainContext.Current.ID)); |
|
|
|
OrganizationUtil.AddOrganizationLimit(query, typeof(Store), storeAlias); |
|
|
|
|
|
|
|
|
|
|
|
var expiredDateExpression = DQExpression.Add(DQExpression.Field(goodsBatchAlias, "ProductionDate"), DQExpression.Field(goodsAlias, "QualityDays")) |
|
|
|
.ECastType<DateTime>(); |
|
|
|
var inStoreDaysExpression = DQExpression.DateDiff(DQExpression.Field(goodsBatchAlias, "InStoreDate"), |
|
|
|
DateTime.Today); |
|
|
|
|
|
|
|
var minExpiredDateLink = mQueryContainer.GetLink("MinExpiredDate"); |
|
|
|
if (!minExpiredDateLink.IsEmpty) { |
|
|
|
query.Where.Conditions.Add(DQCondition.GreaterThanOrEqual(expiredDateExpression, DQExpression.Value(minExpiredDateLink.Value))); |
|
|
|
} |
|
|
|
|
|
|
|
var maxExpiredDateLink = mQueryContainer.GetLink("MaxExpiredDate"); |
|
|
|
if (!maxExpiredDateLink.IsEmpty) { |
|
|
|
query.Where.Conditions.Add(DQCondition.LessThanOrEqual(expiredDateExpression, DQExpression.Value(maxExpiredDateLink.Value))); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
var lineChb = mQueryContainer.GetControl<DFChoiceBox>("ProductLine_ID"); |
|
|
|
if (!lineChb.IsEmpty) { |
|
|
|
query.Where.Conditions.Add(DQCondition.InList(DQExpression.Field(goods, "ProductLine_ID"),lineChb.GetValues().Select(x=>DQExpression.Value(x)).ToArray())); |
|
|
|
} |
|
|
|
|
|
|
|
var minInStoreDaysLink = mQueryContainer.GetLink("MinInStoreDays"); |
|
|
|
if (!minInStoreDaysLink.IsEmpty) { |
|
|
|
query.Where.Conditions.Add(DQCondition.GreaterThanOrEqual(inStoreDaysExpression, DQExpression.Value(minInStoreDaysLink.Value))); |
|
|
|
} |
|
|
|
|
|
|
|
var maxInStoreDaysLink = mQueryContainer.GetLink("MaxInStoreDays"); |
|
|
|
if (!maxInStoreDaysLink.IsEmpty) { |
|
|
|
query.Where.Conditions.Add(DQCondition.LessThanOrEqual(inStoreDaysExpression, DQExpression.Value(maxInStoreDaysLink.Value))); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("会计单位")) { |
|
|
|
AddColumn(query, DQExpression.Field(storeAlias,"AccountingUnit_Name"), "会计单位"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("仓库")) { |
|
|
|
AddColumn(query, DQExpression.Field("Store_Name"), "仓库"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("货位")) { |
|
|
|
AddColumn(query, DQExpression.Field("CargoSpace_Name"), "货位"); |
|
|
|
} |
|
|
|
|
|
|
|
if (EnabelBrandItem && ShowOptionSelected("品牌项")) |
|
|
|
{ |
|
|
|
AddColumn(query, DQExpression.Field("BrandItem_Name"), "品牌项"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("存货编码")) { |
|
|
|
AddColumn(query, DQExpression.Field("Goods_Code"), "存货编码"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("存货名称")) { |
|
|
|
AddColumn(query, DQExpression.Field("Goods_Name"), "存货名称"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("属性分类")) { |
|
|
|
AddColumn(query, DQExpression.Field(goodsPropertyCatalog, "Name"), "属性分类"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("批号")) { |
|
|
|
AddColumn(query, DQExpression.Field("GoodsBatch_Name"), "批号"); |
|
|
|
} |
|
|
|
|
|
|
|
int selectedGoodsPropertyCatalogLevel; |
|
|
|
if (TryGetGoodsPropertyCatalogLevel(out selectedGoodsPropertyCatalogLevel)) { |
|
|
|
for (var i = 1; i <= selectedGoodsPropertyCatalogLevel; i++) { |
|
|
|
var p = new JoinAlias("_p" + i, typeof(GoodsPropertyCatalog)); |
|
|
|
query.From.AddJoin(JoinType.Left, new DQDmoSource(p), DQCondition.EQ(p, "ID", goodsPropertyCatalog, string.Format("TreeDeep{0}ID", i))); |
|
|
|
AddColumn(query, DQExpression.Field(p, "Name"), i + "级分类"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (ShowOptionSelected("存货属性")) { |
|
|
|
AddColumn(query, DQExpression.Field(goodsAlias, "GoodsProperty_Name"), "存货属性"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("产品线")) { |
|
|
|
AddColumn(query, DQExpression.Field(goodsAlias, "ProductLine_Name"), "产品线"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("品牌")) { |
|
|
|
AddColumn(query, DQExpression.Field(goodsAlias, "Brand"), "品牌"); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (ShowOptionSelected("规格")) { |
|
|
|
AddColumn(query, DQExpression.Field(goodsAlias, "Spec"), "规格"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("产地")) { |
|
|
|
AddColumn(query, DQExpression.Field(goodsAlias, "Origin"), "产地"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("简称")) |
|
|
|
{ |
|
|
|
AddColumn(query, DQExpression.Field(goodsAlias, "PrintShortName"), "简称"); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AddColumn(query, DQExpression.Field("Number"), "数量",true); |
|
|
|
|
|
|
|
if (ShowOptionSelected("主单位")) { |
|
|
|
AddColumn(query, DQExpression.Field(goodsAlias, "MainUnit"), "主单位"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("辅数量")) |
|
|
|
{ |
|
|
|
AddColumn(query, DQExpression.Field("SecondNumber"), "辅数量", true); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("辅单位")) { |
|
|
|
AddColumn(query, DQExpression.Field(goodsAlias, "SecondUnit"), "辅单位"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("辅数量II")) { |
|
|
|
|
|
|
|
var expression = DQExpression.Divide(DQExpression.Multiply(DQExpression.Field("Number"), DQExpression.Field(goodsAlias, "SecondUnitII_SecondUnitRatio")), |
|
|
|
DQExpression.Field(goodsAlias, "SecondUnitII_MainUnitRatio")); |
|
|
|
|
|
|
|
AddColumn(query, expression, "辅数量II", true); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("辅单位II")) { |
|
|
|
AddColumn(query, DQExpression.Field(goodsAlias, "SecondUnitII"), "辅单位II"); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (ShowOptionSelected("单价")) { |
|
|
|
AddColumn(query, DQExpression.Field("CostPrice"), "单价"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("金额")) |
|
|
|
{ |
|
|
|
var moneyExpression = DQExpression.Multiply(DQExpression.Field("CostPrice"), DQExpression.Field("Number")); |
|
|
|
AddColumn(query, moneyExpression, "金额", true); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("生产日期")) { |
|
|
|
AddColumn(query, DQExpression.Field(goodsBatchAlias, "ProductionDate"), "生产日期"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("保质天数")) { |
|
|
|
AddColumn(query, DQExpression.Field(goodsAlias, "QualityDays"), "保质天数"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("有效日期")) { |
|
|
|
|
|
|
|
AddColumn(query, expiredDateExpression, "有效日期"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("入库日期")) { |
|
|
|
AddColumn(query, DQExpression.Field(goodsBatchAlias, "InStoreDate"), "入库日期"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("库龄")) { |
|
|
|
AddColumn(query, inStoreDaysExpression, "库龄"); |
|
|
|
} |
|
|
|
|
|
|
|
if (ShowOptionSelected("产品线分类")) |
|
|
|
{ |
|
|
|
AddColumn(query, DQExpression.Field(goodsAlias, "ProductLineCategory_Name"), "产品线分类"); |
|
|
|
} |
|
|
|
|
|
|
|
if (!_goodsPropertyCatalogName.IsEmpty) |
|
|
|
{ |
|
|
|
var goodsProPertyList = _goodsPropertyCatalogName.Text.Split(' '); |
|
|
|
var conditonList = new List<IDQExpression>(); |
|
|
|
foreach (var g in goodsProPertyList) |
|
|
|
{ |
|
|
|
conditonList.Add(DQCondition.Like(goodsPropertyCatalog, "Name", g)); |
|
|
|
} |
|
|
|
query.Where.Conditions.Add(DQCondition.Or(conditonList)); |
|
|
|
} |
|
|
|
return query; |
|
|
|
} |
|
|
|
|
|
|
|
protected override void InitForm(HtmlForm form) { |
|
|
|
base.InitForm(form); |
|
|
|
mDFGrid.AllowColGroup = true; |
|
|
|
mDFGrid.AllowSorting = true; |
|
|
|
mDFGrid.AllowRowGroup = true; |
|
|
|
} |
|
|
|
|
|
|
|
DFInfo detailInfo = DFInfo.Get(typeof(StoreDetail)); |
|
|
|
DFInfo goodsBatchInfo = DFInfo.Get(typeof(GoodsBatch)); |
|
|
|
DFInfo goodsInfo = DFInfo.Get(typeof(Goods)); |
|
|
|
|
|
|
|
static bool EnabelBrandItem |
|
|
|
{ |
|
|
|
get |
|
|
|
{ |
|
|
|
return GlobalFlags.get(B3UnitedInfosConsts.GlobalFlags.库存支持品牌项); |
|
|
|
} |
|
|
|
} |
|
|
|
DFChoiceBox store, cargoSpace; |
|
|
|
private DFTextBox _goodsPropertyCatalogName; |
|
|
|
protected override void AddQueryControls(VLayoutPanel vPanel) { |
|
|
|
base.AddQueryControls(vPanel); |
|
|
|
var dfInfo = DFInfo.Get(typeof(StoreDetail)); |
|
|
|
var layoutManager = new LayoutManager("Main", dfInfo); |
|
|
|
|
|
|
|
layoutManager.Add("AccountingUnit_ID", new SimpleLabel("会计单位"), QueryCreator.DFChoiceBoxEnableMultiSelection(dfInfo.Fields["Store_ID"], mQueryContainer, "AccountingUnit_ID", B3FrameworksConsts.DataSources.授权会计单位)); |
|
|
|
layoutManager["AccountingUnit_ID"].NotAutoAddToContainer = true; |
|
|
|
layoutManager.Add("Store_ID", store=QueryCreator.DFChoiceBoxEnableMultiSelection(dfInfo.Fields["Store_ID"], mQueryContainer, "Store_ID", B3FrameworksConsts.DataSources.授权仓库全部)); |
|
|
|
layoutManager["Store_ID"].NotAutoAddToContainer = true; |
|
|
|
|
|
|
|
layoutManager.Add("CargoSpace_ID", new SimpleLabel("货位"), cargoSpace = QueryCreator.DFChoiceBoxEnableMultiSelection(dfInfo.Fields["CargoSpace_ID"], mQueryContainer, "CargoSpace_ID", B3UnitedInfosConsts.DataSources.货位)); |
|
|
|
layoutManager["CargoSpace_ID"].NotAutoAddToContainer = true; |
|
|
|
cargoSpace.CodeArgumentReferenceTo = store; |
|
|
|
|
|
|
|
layoutManager.Add("GoodsPropertyCatalog_ID", new SimpleLabel("属性分类"), QueryCreator.DFChoiceBox(dfInfo.Fields["Goods_ID"], B3UnitedInfosConsts.DataSources.存货属性分类全部)); |
|
|
|
layoutManager.Add("GoodsProperty_ID", new SimpleLabel("存货属性"), QueryCreator.DFChoiceBoxEnableMultiSelection(dfInfo.Fields["Goods_ID"], mQueryContainer, "GoodsProperty_ID", B3UnitedInfosConsts.DataSources.存货属性全部)); |
|
|
|
layoutManager["GoodsProperty_ID"].NotAutoAddToContainer = true; |
|
|
|
layoutManager.Add("Goods_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(dfInfo.Fields["Goods_ID"], mQueryContainer, "Goods_ID", B3UnitedInfosConsts.DataSources.存货)); |
|
|
|
layoutManager["Goods_ID"].NotAutoAddToContainer = true; |
|
|
|
layoutManager.Add("ProductLine_ID", new SimpleLabel("产品线"), QueryCreator.DFChoiceBoxEnableMultiSelection(dfInfo.Fields["ID"], mQueryContainer, "ProductLine_ID", B3UnitedInfosConsts.DataSources.产品线全部)); |
|
|
|
layoutManager["ProductLine_ID"].NotAutoAddToContainer = true; |
|
|
|
layoutManager.Add("ProductLineCategory_ID", new SimpleLabel("产品线分类"), QueryCreator.DFChoiceBoxEnableMultiSelection(goodsInfo.Fields["ProductLine_ID"], mQueryContainer, "ProductLineCategory_ID", B3UnitedInfosConsts.DataSources.产品线分类)); |
|
|
|
layoutManager["ProductLineCategory_ID"].NotAutoAddToContainer = true; |
|
|
|
layoutManager.Add("Goods_Name", QueryCreator.DFTextBox(dfInfo.Fields["Goods_Name"])); |
|
|
|
layoutManager.Add("Goods_Code", QueryCreator.DFTextBox(dfInfo.Fields["Goods_Code"])); |
|
|
|
layoutManager.Add("GoodsPropertyCatalog_Name", new SimpleLabel("存货分类"), _goodsPropertyCatalogName = QueryCreator.DFTextBox(dfInfo.Fields["Goods_Name"])); |
|
|
|
if (EnabelBrandItem) |
|
|
|
{ |
|
|
|
layoutManager.Add("BrandItem_ID", QueryCreator.DFChoiceBox(dfInfo.Fields["BrandItem_ID"], B3UnitedInfosConsts.DataSources.品牌项)); |
|
|
|
} |
|
|
|
layoutManager.Add("GoodsBatch_Name", QueryCreator.DFTextBox(dfInfo.Fields["GoodsBatch_Name"])); |
|
|
|
layoutManager.Add("Brand", new SimpleLabel("品牌"), new DFTextBox(goodsInfo.Fields["Brand"])); |
|
|
|
layoutManager.Add("Origin", new SimpleLabel("产地"), new DFTextBox(goodsInfo.Fields["Origin"])); |
|
|
|
layoutManager.Add("ProductionDate",new SimpleLabel("生产日期"),QueryCreator.DateRange(dfInfo.Fields["GoodsBatch_ProductionDate"], mQueryContainer, "MinProductionDate", "MaxProductionDate")); |
|
|
|
layoutManager["ProductionDate"].NotAutoAddToContainer = true; |
|
|
|
layoutManager.Add("QualityDays", new SimpleLabel("保质天数"), QueryCreator.DayRange(goodsInfo.Fields["QualityDays"], mQueryContainer, "MinQualityDays", "MaxQualityDays")); |
|
|
|
layoutManager["QualityDays"].NotAutoAddToContainer = true; |
|
|
|
|
|
|
|
layoutManager.Add("ExpiredDate", new SimpleLabel("过期日期"), QueryCreator.DateRange(dfInfo.Fields["GoodsBatch_ProductionDate"], mQueryContainer, "MinExpiredDate", "MaxExpiredDate")); |
|
|
|
|
|
|
|
|
|
|
|
layoutManager.Add("InStoreDate", new SimpleLabel("入库日期"), QueryCreator.DateRange(goodsBatchInfo.Fields["InStoreDate"], mQueryContainer, "MinInStoreDate", "MaxInStoreDate")); |
|
|
|
|
|
|
|
layoutManager.Add("InStoreDays", new SimpleLabel("库龄"), QueryCreator.DayRange(goodsInfo.Fields["QualityDays"], mQueryContainer, "MinInStoreDays", "MaxInStoreDays")); |
|
|
|
layoutManager["InStoreDays"].NotAutoAddToContainer = true; |
|
|
|
|
|
|
|
layoutManager.CreateDefaultConfig(2).Expand = false; |
|
|
|
|
|
|
|
vPanel.Add(layoutManager.CreateLayout()); |
|
|
|
|
|
|
|
layoutManager.AutoAddToQueryContainer(mQueryContainer); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
protected override string AccessRoleName |
|
|
|
{ |
|
|
|
get { return "B3_YunKen.报表分析.耘垦库存查询"; } |
|
|
|
} |
|
|
|
} |
|
|
|
} |