Function to use in Queries, Filters
Joris on Dynamics AX Musings wrote this Blog Entry: Custom Query Range Functions using SysQueryRangeUtil
I am slightly annoyed with myself that I have not been aware of this even though it has been available since AX 2009. The following functions can be used in any query or filter. Note that the functions are case sensitive and need to be put in brackets e.g. (currentUserId()).
Current user (or roles thereof)
- currentUserId()
- currentEmployeeId()
- currentBusinessRelationsAccount()
- currentContactPersonId()
- currentCustomerAccount()
- currentVendorAccount()
Dates (all but dateRange are relate to the current date and time)
- currentSessionDate()
- currentSessionDateTime()
- day(int relativeDays = 0)
- dayRange(int relativeDaysFrom = 0, int relativeDaysTo = 0)
- greaterThanDate(int relativeDays = 0)
- lessThanDate(int relativeDays = 0)
- monthRange(int relativeMonthsFrom = 0, int relativeMonthsTo = 0)
- yearRange(int relativeYearsFrom = 0, int relativeYearsTo = 0)
- dateRange(date startDate, date endDate)
Constants
- currentStaticMasterPlan()
AX2012 only
- currentDate()
- currentLanguageId()
- currentUserLanguage();
- currentWorker()
- currentWorkerRecId()
- currentLegalEntity()
- currentParty()
- advancedLedgerEntryCurrentUserFilter(boolean _createdBy)
- advancedLedgerEntryTxtOpenDraftAll(anytype _advancedLedgerEntryTransactionStatus)
- currentRoleHasAccessToPrivate(boolean _useCache = true)
- currentStaticMasterPlanVersion()
- dateRange(date startDate, date endDate)
- lessThanUtcDate(int relativeDays = 0)
- lessThanUtcNow()
- greaterThanUtcDate(int relativeDays = 0)
- greaterThanUtcNow()
- documentStatusPurchOrderOrGreater()
- getActiveMasterPlanVersionByPlanId(ReqPlanId _planId)
- isDirAddressPolicyOff()
- isPrivate()
- pmfInventTableIsBOM()
- pmfInventTableIsBOMFormula()
- projActiveAll(ProjActiveAll _projActiveAll)
- projActiveAllWIPEliminated(anytype _ProjTableActiveAll)
- projLevels(ProjLevels _projLevels)
- projPostedTransType(ProjPostTransViewType _projPostedTransViewType)
- projUnpostedTransType(ProjUnpostedTransViewType _projUnpostedTransViewType)
- salesQuotationTemplateGroupFilter(SalesQuotationFilter _salesQuotationFilter)
- salesQuotationTypeListPageFilter(SalesQuotationTypeListPage _salesQuotationTypeListPage)
- sessionGuid()
- workflowDelegationFilter(WorkflowDelegationView _filter)
As you see AX 2012 has many more predefined special ranges, many of which are not very self explanatory. These are used in the filters of the pre-filtered list pages.
No comments:
Post a Comment