public Query makeQuery( Statement statement, Formula[] formulae, QueryAxis[] axes, String cube, Exp slicer, QueryPart[] cellProps, boolean strictValidation) { final QueryAxis slicerAxis = slicer == null ? null : new QueryAxis( false, slicer, AxisOrdinal.StandardAxisOrdinal.SLICER, QueryAxis.SubtotalVisibility.Undefined, new Id[0]); return new Query( statement, formulae, axes, cube, slicerAxis, cellProps, strictValidation); }
/** * Adds a new formula specifying a set * to an existing query. */ public void addFormula(Id id, Exp exp) { addFormula( new Formula(false, id, exp, new MemberProperty[0], null, null)); }
/** * @deprecated Please use {@link #clone}; this method will be removed in * mondrian-4.0 */ public Query safeClone() { return clone(); }
RolapCube cube = (RolapCube) query.getCube(); this.batchingReader = new FastBatchingCellReader(execution, cube, aggMgr); query.clearEvalCache(); query.putEvalCache("ALL_MEMBER_LIST", nonDefaultAllMembers); emptyNonAllMembers, evaluator, query.getSlicerAxis(), query.slicerCalc, axisMembers); nonAllMembers.size() - 1, savedEvaluator, query.getSlicerAxis(), query.slicerCalc); query.getSlicerAxis().getSet(), calcCached, evaluator); query.getSlicerAxis().getSet(), cacheDescriptor); query.clearEvalCache();
Set<Member> measureMembers = query.getMeasuresMembers(); Cube cube = query.getCube(); Dimension dimension = cube.getDimensions()[0]; query.addMeasuresMembers( dimension.getHierarchy().getDefaultMember()); for (Member member : query.getMeasuresMembers()) { if (member instanceof RolapStoredMeasure) { addMeasure(
final Cube cube = q.getCube(); OlapElement olapElement = schemaReaderSansAc.lookupCompound( if (q.ignoreInvalidMembers()) { int nameLen = segments.size() - 1; olapElement = null; q.addMeasuresMembers(olapElement); return createExpr(olapElement);
request.getSession(), getServletContext(), queryName); Query query = rc.getQuery(); query = query.clone(); rc.setDirty(); String operation = request.getParameter("operation"); String memberName = request.getParameter("member"); boolean fail = true; Member member = query.getSchemaReader(true).getMemberByUniqueName( Util.parseIdentifier(memberName), fail); if (true) {
try { final Query query = new Query( statement, this, new Parameter[0], false); query.createValidator().validate(formula); calculatedMemberList.add(formula); return (RolapMember) formula.getMdxMember();
query.close(); } catch ( Exception ignored ) {
private void addFormulasToQuery() { LOGGER.debug("FormulaResolvingVisitor addFormulas"); List<Formula> formulas = new ArrayList<Formula>(); for (Level level : levels) { Formula memberFormula = createDefaultMemberFormula(level); formulas.add(memberFormula); formulas.add(createNamedSetFormula(level, memberFormula)); } for (Dimension dim : dimensions) { Level level = dim.getHierarchy().getLevels()[0]; formulas.add(createSentinelFormula(level)); } query.addFormulas(formulas.toArray(new Formula[formulas.size()])); }
/** * Returns <code>Hierarchy[]</code> used on <code>axis</code>. It calls * {@link #collectHierarchies}. */ public Hierarchy[] getMdxHierarchiesOnAxis(AxisOrdinal axis) { if (axis.logicalOrdinal() >= axes.length) { throw MondrianResource.instance().MdxAxisShowSubtotalsNotSupported .ex(axis.logicalOrdinal()); } QueryAxis queryAxis = axis.isFilter() ? slicerAxis : axes[axis.logicalOrdinal()]; return collectHierarchies(queryAxis.getSet()); }
MeasureFinder measureFinder = new MeasureFinder(this, baseCube, measuresLevel); queryExp.accept(measureFinder); modifiedMeasureList.addAll(measureFinder.getMeasuresFound());
/** * Adds a new formula specifying a member * to an existing query. * * @param id Name of member * @param exp Expression for member * @param memberProperties Properties of member */ public void addFormula( Id id, Exp exp, MemberProperty[] memberProperties) { addFormula(new Formula(true, id, exp, memberProperties, null, null)); }
@SuppressWarnings({ "CloneDoesntCallSuperClone", "CloneDoesntDeclareCloneNotSupportedException" }) public Query clone() { return new Query( statement, cube, Formula.cloneArray(formulas), QueryAxis.cloneArray(axes), (slicerAxis == null) ? null : (QueryAxis) slicerAxis.clone(), cellProps, parameters.toArray(new Parameter[parameters.size()]), strictValidation); }