📄 findforecasts.bsh
字号:
/* * Copyright (C) 2006 Open Source Strategies, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA *//* Copyright (c) 2005-2006 Open Source Strategies, Inc. */import org.ofbiz.base.util.UtilMisc;import org.ofbiz.base.util.UtilDateTime;import org.ofbiz.entity.condition.EntityConditionList;import org.ofbiz.entity.condition.EntityExpr;import org.ofbiz.entity.condition.EntityOperator;import org.ofbiz.entity.util.EntityFindOptions;import org.ofbiz.entity.util.EntityUtil;// sometimes we're passed a partyId from another page to avoid parameter collision with forminternalPartyId = parameters.get("partyId");// possible fields we're searching byif (parameters.get("internalPartyId") != null) internalPartyId = parameters.get("internalPartyId"); // override the partyId inputcustomTimePeriodId = parameters.get("customTimePeriodId");// put the correct partyId back into the contextcontext.put("internalPartyId", internalPartyId);// construct search conditionssearchConditions = new ArrayList();if (customTimePeriodId != null && !customTimePeriodId.equals("")) { searchConditions.add(new EntityExpr("customTimePeriodId", EntityOperator.EQUALS, customTimePeriodId));}if (internalPartyId != null && !internalPartyId.equals("")) { searchConditions.add(new EntityExpr("internalPartyId", EntityOperator.EQUALS, internalPartyId));}if (searchConditions.size() == 0) return;// make sure no null forecasts come outsearchConditions.add(new EntityExpr("salesForecastId", EntityOperator.NOT_EQUAL, null));// we only want quarterssearchConditions.add(new EntityExpr("periodTypeId", EntityOperator.EQUALS, "FISCAL_QUARTER"));searchConditionList = new EntityConditionList(searchConditions, EntityOperator.AND);listIt = delegator.findListIteratorByCondition("SalesForecastAndCustomTimePeriod", searchConditionList, null, null, // get all fields null, // fields to order by // the first true here is for "specifyTypeAndConcur" // the second true is for a distinct select. Apparently this is the only way the entity engine can do a distinct query new EntityFindOptions(true, EntityFindOptions.TYPE_SCROLL_INSENSITIVE, EntityFindOptions.CONCUR_READ_ONLY, true));// for now juts get the complete list, becaues the forecast list form doesn't use an iteratorcontext.put("forecasts", listIt.getCompleteList());
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -