Special Functions For Reports
Jump to navigation
Jump to search
About Special Functions
Sometimes a value can't be retrieved directly via sql from the report. In this case a special function can be used to compute the desired value.
Here is list of the special functions that can be called from the reports. These functions compute the data on the server side and return them into the returnvalue of the report. The functions usually stay in: ICT\Petra\Server\lib\MReporting\MModule
\Function.cs. They are called from the report xml file like this:
<calculation id="DummyFunction" returns="PartnerNameAndKey" returnsFormat="text"> <query> <queryDetail> <value text="NO-SQL"/> <value function="assign(PartnerNameAndKey, {PartnerKey})"/> <value function="assign(Amount, add({Amount1},{Amount2}))"/> </queryDetail> </query> </calculation>
The assign
function is of special use because it assigns a value of another function to a parameter. So it is used in almost every call.
General Functions
These function are usefull for all kinds of reports:
- eq, ne: Test if two values are equal or not equal
- lt, le, gt, ge: Test if two values are less than, less equal, greater than, greater equal
- sub: Parmeter1 - Parameter2
- add: Parameter1 + Parameter2
- addItems: Adds a list of parameters. The first parameter defines how many values need to be added
- mul: Parameter1 * Parameter2
- div: Parameter1 / Parameter2
- mod: Parameter1 % Parameter2
- floor: returns floor integer
- round: returns rounded integer
- not: invert boolean value
- iif: condition, value_if_true, value_if_false )
- or, and: Logical operatior
- length: Returns the length of the string
- ContainsCSV: Checks if the csv list of Parameter1 contains Parameter2
- substring, substr: Returns a substring Parameter1 is the original string, Parameter2 the startindex and Parameter3 the length of the substring
- substringright, substrright: Returns the right part of a string. Parameter1 is the original string, Parameter2 the lenght of the subsring
- substringwithoutright, substrwithoutright: Returns the left part of a string. Parameter1 is the original string, Parameter2 the length of the substring
- concatenate: Concatenate two strings
- concatenateww: Concatenate two strings with a number of whitespaces. Parameter3 defines how many whitespaces should be added between the two strings
- concatenatewithcomma: Concatenate two strings with a comma and one space as separator.
- format: Returns Parameter1 as a formatted string depending on Parameter2. This is used for currency formatting
- formattime: Returns a string in a time format like hh:mm:ss Whereas the ":" can be defined with Parameter1
- assign: Assign Parameter2 to Parameter1. Parameter1 must be a variable
- exists: Checks if a parameter exitst in the report
- isnull: Checks if a parateter is null
- template: Calculates a calculation template
- columnexist: Checks if a column with the given name exists
- conditionrow: Hide this row from the results, if Parameter1 is true
- column: Returns the name of the column. Parameter1 defines the column index
- HasColumns: Checks if the current row has at least one column that is not null or not 0
- HasChildColumns: Checks if the children of the master row have at least one column that is not null or not 0
- HasChildRows: Checks if the master has children
- fatherColumn: Returns the value of the parent row of the given column
- childColumn: Returns the value of the child row of the given column
- SecondLevelColumn: Returns the value of the given column from the second level
- FirstLevelColumn: Returns the value of the given column from the first level
- GetShortCaption: Returns the first line of the caption of the given column
- GetCaption: Returns the complete caption of the given column
- getSumLowerReport: Gets the sum of the lower report of the given column
- getSumLower2Report: Like getSumLowerReport but goes one level deeper
- getSumLowerReportCredit: Like getSumLowerReport but use the
debit_credit_indicatior
Conference
TODO
Finance
TODO
Financial Development
TODO
Partner
Contains the functions that are related mainly to the Partner Module
- GetPartnerLabelValues: Add a new parameter to the result. This is used for the local partner data report.
- GetPartnerBestAddress: Find the best p_partner_location of a partner and export the parameters.
- AddressMeetsPostCodeCriteriaOrEmpty: will return true if the best address is in the given postal region, postcode range and county
- GetPartnerShortname: Get the short name of a partner
- GetFieldOfPartner: Returns the field name of partner. The partner needs to have an entry in PPartner_Filed_Of_Service datatable
- CheckAccountNumber: Checks the validity of a bank account number, according to the country specific check.
- Function which are only used for the publication statistical report:
- GetCountyPublicationStatistic: Calculates one row of the publication statistical report.
- CalculatePublicationStatisticPercentage: Fills the values of one line in the publication statistical report.
- GetNumberOfAllPublications: Calculates the line "Counts" in the publication statistical report.
- DetermineAddressDateStatus: Determine the status of an address given the "date effective from" and the "date good until" dates.
- GetSubscriptions: Get all subscriptions with a defined status of a partner.
- GetFirstEntyFromSQLStatement: Returns the fisrst row of a data table that is the result of a sql statement from the xml file.
- GetPartnerTypes: Returns a comma separated list of all partner types of a partner
- GetOccupation: Get the occupation code and occupation description from p_occupation table
Personnel
- GetSiteName: Returns the site name of the current site key, which is stored in s_system_parameter
- GetCurrentCommitmentPeriod: Find the commitment period of a given partner at a given time.
- GetType: Returns the p_partner_type.p_type_code_c of a given partner if the type code matches
- GenerateUnitHierarchy: Generate the output of the unit hierarchy report.