CalcBuilder Forum

if function by date

User moon_1817 2014-10-30 07:51:55

We have small problem by if function.

We have build a calculator for a fringe benefits
User enter a payment date and amount.
Now calculator need to calculate the taxes.

Tax precent depend from a date. But it dosen't show a result.
http://backoffice.ee/kasulikku/erisoodustuse-kalkulaator

With kind regards
Gunnar

Here is a code:

// algandmed (tulumaksu määr, sotsiaalmaksu määr jms)
var_dump($valjamaksekuupaev);
die();
// kui väljamakse kuupäev on väiksem või võrdne 31.12.2004, siis on tulumaksu määraks 26/74
if($valjamaksekuupaev, siis on tulumaksu määraks 22/78
if($valjamaksekuupaev>31.12.2006&&$valjamaksekuupaev31.12.2007&&$valjamaksekuupaev31.12.2014) $tulumaksumaar=20/80;

// kui väljamakse kuupäev on väiksem või võrdne 31.12.2000, siis on sotsiaalmaksu määraks 33%
if($valjamaksekuupaev31.12.2000) $sotsiaalmaksumaar=33/100;

//=================================
// erisoodustuse tulumaksu leidmine
$erisoodustusetulumaks=$maksustatavsumma*$tulumaksumaar

// erisoodustuse sotsiaalmaksu leidmine
$erisoodustusesotsiaalmaks=$maksustatavsumma+$erisoodustusetulumaks

// erisoodustuse maksud kokku
$erisoodustusemaksudkokku=$erisoodustusetulumaks+$erisoodustusesotsiaalmaks

//=================================
// numbrite formaat, 2 kohta peale koma, tuhandete eraldaja on tühik
$maksustatavsumma=number_format($maksustatavsumma,2,',',' ');
$erisoodustusetulumaks=number_format($erisoodustusetulumaks,2,',',' ');
$erisoodustusesotsiaalmaks=number_format($erisoodustusesotsiaalmaks,2,',',' ');
$erisoodustusemaksudkokku=number_format($erisoodustusemaksudkokku,2,',',' ');

Edited by moon_1817 - 30.10.2014 08:10

User moon_1817 2014-10-30 08:12:38

Here is another code what we have tried to use

// algandmed (tulumaksu määr, sotsiaalmaksu määr jms)

//=================================
$unixtime = strtotime($valjamaksekuupaev);

// kui väljamakse kuupäev on väiksem või võrdne 31.12.2004, siis on tulumaksu määraks 26/74
$date1 = strtotime('31.12.2004');
if($unixtime $date1 && $unixtime $date1 && $unixtime 31.12.2006&&$unixtime31.12.2007&&$unixtime31.12.2014) $tulumaksumaar=20/80;

// kui väljamakse kuupäev on väiksem või võrdne 31.12.2000, siis on sotsiaalmaksu määraks 33%
$date1 = strtotime('31.12.2000');
if($unixtime31.12.2000) $sotsiaalmaksumaar=33/100;

//=================================
// erisoodustuse tulumaksu leidmine
$erisoodustusetulumaks=$maksustatavsumma*$tulumaksumaar

// erisoodustuse sotsiaalmaksu leidmine
$erisoodustusesotsiaalmaks=$maksustatavsumma+$erisoodustusetulumaks

// erisoodustuse maksud kokku
$erisoodustusemaksudkokku=$erisoodustusetulumaks+$erisoodustusesotsiaalmaks

//=================================
// numbrite formaat, 2 kohta peale koma, tuhandete eraldaja on tühik
$maksustatavsumma=number_format($maksustatavsumma,2,',',' ');
$erisoodustusetulumaks=number_format($erisoodustusetulumaks,2,',',' ');
$erisoodustusesotsiaalmaks=number_format($erisoodustusesotsiaalmaks,2,',',' ');
$erisoodustusemaksudkokku=number_format($erisoodustusemaksudkokku,2,',',' ');

Moonsoft support 2014-10-30 09:13:00

Hello,

We checked your code and maybe some lines are not correct. This is an example of date comparasion using data from form:

// Date format : d.m.yy
$date1=strtotime($YOUR_DATEFIELD);
$date2=strtotime('31.12.2014');
if ($date2$date1){
$result=$YOUR_DATEFIELD.' is less than 31.12.2014';
}else{
$result=$YOUR_DATEFIELD.' is more than 31.12.2014';
}

Replace for 'lower than' symbol.

Please note that date format in Calc Builder is configured in this example as d.m.yy
Also check that all code lines ends with ;


Regards,

Edited by MSTeam - 30.10.2014 09:16

...
Support/development

Perfect for small code changes or to correct any bug at your site

Buy now!
...
List Manager

Build different lists for your site

Buy now!