Difference between revisions of "CommonFormula"

Jump to: navigation, search
m (variables)
m (functions)
Line 28: Line 28:
 
<pre>getBalance(1) return 25.01
 
<pre>getBalance(1) return 25.01
 
getBalance(getAccount(1, %PILOT)) return 35.01</pre>
 
getBalance(getAccount(1, %PILOT)) return 35.01</pre>
 +
 +
==formatDate('pattern',%SOME_DATE)==
 +
return the formatted %SOME_DATE
 +
Example:
 +
<pre>formatDate('%w',%START_DATE) returns the day of week of START_DATE</pre>
 +
 +
==addTime(%SOME_DATE, %SOME_TZ)==
 +
return %SOME_DATE with added time depending of %SOME_TZ
 +
Example:
 +
<pre>addTime(%NOW_DATE, %USER_TZ) returns the current date converted to user timezone by adding timezone time difference</pre>
 +
 +
==subTime(%SOME_DATE, %SOME_TZ)==
 +
return %SOME_DATE with substracted time depeding of %SOME_TZ
 +
Example:
 +
<pre>subTime(%NOW_DATE, 'Europe/Paris') returns the current date converted to France timezone by substracting timezone time difference</pre>
 +
 +
==sumFlightTime(%PILOT, 'year', 'month', 'day', 'hour', 'minute', 'position' )==
 +
return the total flight time of a pilot since a starting date. Position at 0 is first pilot, position at 1 is second pilot
 +
<pre>sumFlightTime(%PILOT, 2008, 01, 01, 00, 00, 0 ) returns the total flight time of first pilot since 2008-01-01 00:00:00</pre>
 +
 +
==getFlowSumBetweenAccount('accound id 1', 'account id 2', 'start date', 'end date')==
 +
return the balance difference between account 1 and account 2 from a start date to an end date
 +
<pre>getFlowSumBetweenAccount(%ACCOUNT1, %ACCOUNT2, '2008-01-01', %NOW_DATE)</pre>
  
 
=variables=
 
=variables=

Revision as of 18:00, 10 May 2010

conditional processing

(test) ? true-case : false-case

conditional processing with operator OR/AND

( test1 OR test2 ) ? true-case : false-case
( test1 AND test2 ) ? true-case : false-case

functions

max(a,b)

return the maximum between a and b

min(a,b)

return the minimum between a and b

abs(a)

return the absolute value of a

roundCeil(a,b)

return the a value round top to b

Example:

roundCeil(106,5) return 110

getAccount(a, %PILOT)

return the account id of the account type id "a" from the member %PILOT

Example:

getAccount(1, %PILOT) return 4

getBalance(a)

return the balance of the account a Example:

getBalance(1) return 25.01
getBalance(getAccount(1, %PILOT)) return 35.01

formatDate('pattern',%SOME_DATE)

return the formatted %SOME_DATE Example:

formatDate('%w',%START_DATE) returns the day of week of START_DATE

addTime(%SOME_DATE, %SOME_TZ)

return %SOME_DATE with added time depending of %SOME_TZ Example:

addTime(%NOW_DATE, %USER_TZ) returns the current date converted to user timezone by adding timezone time difference

subTime(%SOME_DATE, %SOME_TZ)

return %SOME_DATE with substracted time depeding of %SOME_TZ Example:

subTime(%NOW_DATE, 'Europe/Paris') returns the current date converted to France timezone by substracting timezone time difference

sumFlightTime(%PILOT, 'year', 'month', 'day', 'hour', 'minute', 'position' )

return the total flight time of a pilot since a starting date. Position at 0 is first pilot, position at 1 is second pilot

sumFlightTime(%PILOT, 2008, 01, 01, 00, 00, 0 ) returns the total flight time of first pilot since 2008-01-01 00:00:00

getFlowSumBetweenAccount('accound id 1', 'account id 2', 'start date', 'end date')

return the balance difference between account 1 and account 2 from a start date to an end date

getFlowSumBetweenAccount(%ACCOUNT1, %ACCOUNT2, '2008-01-01', %NOW_DATE)

variables

%DURATION

flight time input into the form

%COUNTER_DEPARTURE

counter departure input into the form

%COUNTER_ARRIVAL

counter arrival input into the form

%PILOT

pilot id

%USER_ID

user id

%LASTNAME

member lastname

%FIRSTNAME

member firstname

%NOW_DATE

current date (format is YYYY-MM-DD hh:mm:ss)

%START_DATE

date of flight beginning (format is YYYY-MM-DD hh:mm:ss)

%ACCOUNTING_START_DATE

accounting start date (format is YYYY-MM-DD hh:mm:ss)

%USER_TZ

member timezone

%ENTITY_TZ

structure/entity timezone

%QTY

quantity of purcharsed item(s)

%ACCOUNT1

debit account id

%ACCOUNT2

credit account id