This commit is contained in:
Thomas Peterson 2020-11-11 10:06:51 +01:00
parent 2711361260
commit a4673e09a5
10 changed files with 1899 additions and 2 deletions

View File

@ -111,7 +111,6 @@ class CalcValues
if ($edge->getCalcValue() != "") {
$cv = $this->formelCalc->parse($edge->getCalcValue());
//echo $id . ' '. $this->formelCalc->parse($edge->getCalcValue()) . ' ' . $cv . ' '. PHP_EOL.PHP_EOL;
eval('$cv = ' . $cv . ';');
$this->engine->addCalcVariable($id, $cv);

View File

@ -354,7 +354,7 @@ class Edge
if (is_array($values)) {
foreach ($values as $val) {
if ((
if (is_numeric($value) && (
(preg_match("/^([0-9]+)-([0-9]+)$/", trim($val), $regs) && ($value >= $regs[1] && $value <= $regs[2])) ||
(preg_match("/^([0-9]+)-$/", trim($val), $regs) && $value >= $regs[1]))) {
return true;

View File

@ -48,6 +48,7 @@ class PaperDbSelect extends Select
{
/** @var PaperOpt $option */
$option = $this->getSelectedOption();
if($option == null) {
$variables[$this->getId() . '_grammatur'] = 0;

View File

@ -0,0 +1,55 @@
<?php
namespace PSC\Library\Calc\Tests\Customer\I;
use PSC\Library\Calc\Article;
use PSC\Library\Calc\Engine;
use PSC\Library\Calc\PaperContainer;
use PSC\Library\Calc\Tests\Mock\PaperRepostory;
class CalcTest extends \PHPUnit_Framework_TestCase
{
/** @var Engine */
protected $engine = null;
public function setUp()
{
$repository = new PaperRepostory();
$paperContainer = new PaperContainer();
$paperContainer->parse(simplexml_load_string(file_get_contents(__DIR__ . '/papierContainer.xml')));
$this->engine = new Engine();
$this->engine->setPaperContainer($paperContainer);
$this->engine->setPaperRepository($repository);
$this->engine->setFormulas(file_get_contents(__DIR__ . '/formels.txt'));
$this->engine->setParameters(file_get_contents(__DIR__ . '/parameters.txt'));
$this->engine->setTemplates(file_get_contents(__DIR__ . '/calcTemplates.xml'));
$this->engine->loadString(file_get_contents(__DIR__ . '/calc.xml'));
}
public function tearDown()
{
$this->engine = null;
}
public function testIfDefaultPriceIsOk()
{
$this->assertEquals(100.99 , $this->engine->getPrice());
}
public function testIf6000PriceIsOk()
{
$this->engine->setVariable('auflage', 6000);
$this->assertEquals(132.05 , $this->engine->getPrice());
}
public function testIfDruckfarbenPriceIsOk()
{
$this->engine->setVariable('auflage', 6000);
$this->engine->setVariable('druckfarben_inhalt', 3);
$this->assertEquals(195.45 , $this->engine->getPrice());
}
}

716
tests/Customer/I/calc.xml Normal file
View File

@ -0,0 +1,716 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- ACHTUNG STA+ PRÄ verwendet wegen "A < 682 cm2 Problem" hier IMMER den Fixwert von Fischer statt Tiegel -->
<kalkulation>
<artikel>
<name>Banderolen</name>
<kommentar/>
<option id="ecoprint" name="eco-print" type="Text" default="Umweltfreundlicher Offsetdruck (klimaneutrale und emissionsarme Produktion, mineralölfreie Ökodruckfarben, Papier aus nachhaltiger Forstwirtschaft oder Recycling, VOC-/alkoholfreier Druck mit Ökostrom)">
</option>
<option id="auflage" name="Auflage" type="Input" default="3000" min="100" max="50000"/>
<option id="breite" name="Breite in cm" type="Input" default="40" min="5" max="84"/>
<option id="hoehe" name="Höhe in cm" type="Input" default="6" min="3" max="30"/>
<option id="falzbrueche" name="Falzbrüche" type="Hidden" default="keine">
<opt id="keine" name="keine Falzung"/>
<opt id="1" name="1 Falzung"/>
<opt id="2" name="2 Falzungen"/>
<opt id="6" name="3 Falzungen"/>
<opt id="8" name="4 Falzungen"/>
<opt id="10" name="5 Falzungen"/>
<opt id="12" name="6 Falzungen"/>
<opt id="14" name="7 Falzungen"/>
<opt id="16" name="8 Falzungen"/>
<opt id="10" name="Fensterfalz, Altarfalz"/>
</option>
<option id="druckfarben_inhalt" name="Druckfarben" type="Select" default="1">
<opt id="1" name="4/0 Euroskala (einseitig)"/>
<!-- <opt id="2" name="4/1 Euroskala"/> -->
<opt id="3" name="4/4 Euroskala (beidseitig)"/>
<opt id="4" name="5/0 Euroskala + Sonderfarbe"/>
<opt id="5" name="5/5 Euroskala + Sonderfarbe"/>
<!-- <opt id="6" name="6/6 Euroskala + 2 Sonderfarben"/>
<opt id="7" name="1/0 Schwarz"/>
<opt id="8" name="1/1 Schwarz"/>
<opt id="9" name="2/0 Schwarz + Sonderfarbe"/>
<opt id="10" name="2/0 Sonderfarben"/>
<opt id="11" name="2/1 Schwarz + Sonderfarbe"/>
<opt id="12" name="2/2 Sonderfarben"/>
<opt id="13" name="3/0 Sonderfarben"/>
<opt id="14" name="3/1 Schwarz + Sonderfarben"/>
<opt id="15" name="3/3 Sonderfarben"/>
<opt id="18" name="4/0 Euroskala MAG-migrationsarm"/>
<opt id="19" name="4/4 Euroskala MAG-migrationsarm"/> -->
</option>
<option id="papier_inhalt" name="Papiersorte" type="Select" mode="papierdb" container="banderolen" default="sm150g"/>
<option id="verschluss" name="Verschluss" type="Select" default="0">
<opt id="0" name="ohne Verschluss"/>
<opt id="1" name="Klebepunkte (lose beigelegt)"/>
<opt id="2" name="Klebepunkte (vorkonfektioniert)"/>
<opt id="3" name="Haftstreifen (lose beigelegt)"/>
<opt id="4" name="Haftstreifen (vorkonfektioniert)"/>
<opt id="5" name="Stanzung/Schlitzung"/>
</option>
<option id="dateiformat_geliefert" name="Druckdaten" type="Select" default="1">
<opt id="1" name="PDF-Datei (Standard)"/>
<opt id="2" name="JPEG-Datei"/>
<opt id="3" name="TIFF-Datei"/>
<opt id="4" name="anderes Dateiformat"/>
</option>
<option id="korrekturabzug" name="Korrekturabzug" type="Select" default="1">
<opt id="1" name="per PDF (Standard)"/>
<opt id="2" name="per Laserausdruck"/>
<opt id="3" name="per Digitalproof"/>
<opt id="4" name="kein Korrekturabzug"/>
</option>
<!-- Ab hier werden die weiteren Optionen abgefragt, neu angelegt von ltb -->
<option id="akkordeon_start" name="akordeon_start" type="Hidden"/>
<option id="sortenzahl" name="Anzahl Sorten" type="Select" default="1">
<opt id="1" name="1 Motiv"/>
<opt id="2" name="2 Motive"/>
<opt id="3" name="3 Motive"/>
<opt id="4" name="4 Motive"/>
<opt id="5" name="5 Motive"/>
<opt id="6" name="6 Motive"/>
<opt id="7" name="7 Motive"/>
<opt id="8" name="8 Motive"/>
<opt id="9" name="9 Motive"/>
<opt id="10" name="10 Motive"/>
<opt id="11" name="11 Motive"/>
<opt id="12" name="12 Motive"/>
<opt id="13" name="13 Motive"/>
<opt id="14" name="14 Motive"/>
<opt id="15" name="15 Motive"/>
<opt id="16" name="16 Motive"/>
<opt id="17" name="17 Motive"/>
<opt id="18" name="18 Motive"/>
<opt id="19" name="19 Motive"/>
<opt id="20" name="20 Motive"/>
</option>
<option id="drucklack" name="Drucklackierung" type="Select" default="1">
<opt id="1" name="Nein"/>
<opt id="2" name="Ja"/>
</option>
<option id="stanzung" name="Stanzung" type="Select" default="1">
<opt id="1" name="Nein"/>
<opt id="2" name="Vorhandene Stanzform"/>
<opt id="3" name="Neue Stanzform"/>
</option>
<option id="bohren_lochen" name="Bohren / Lochung" type="Hidden" default="0">
<opt id="0" name="Nein"/>
<opt id="1" name="1 fach"/>
<opt id="2" name="2 fach"/>
<opt id="4" name="4 fach"/>
</option>
<option id="perforation" name="Perforation" type="Select" default="0">
<opt id="0" name="Nein"/>
<opt id="1" name="1 Linie"/>
<opt id="2" name="2 Linien"/>
<opt id="3" name="3 Linien"/>
<opt id="4" name="4 Linien"/>
</option>
<option id="praegung" name="Prägung" type="Select" default="1">
<opt id="1" name="Nein"/>
<opt id="2" name="Vorhandene Prägeform"/>
<opt id="3" name="Neue Prägeform"/>
</option>
<option id="duftdruck" name="Duftdruck" type="Hidden" default="0">
<opt id="0" name="Nein"/>
<opt id="1" name="Ja"/>
</option>
<option id="ecken_runden" name="Ecken runden" type="Hidden" default="0">
<opt id="0" name="Nein"/>
<opt id="3" name="ja, 3mm"/>
<opt id="5" name="ja, 5mm"/>
</option>
<option id="nummerierung" name="Nummerierung / Codierung" type="Select" default="1">
<opt id="1" name="Nein"/>
<opt id="2" name="Schwarz Inkjet"/>
<opt id="3" name="Farbig Laser"/>
<opt id="4" name="Schwarz, Laser"/>
</option>
<option id="buendeln" name="Expl. bündeln zu" type="Input" default="0"/>
<option id="laserstanzung" name="Laserstanzung" type="Hidden" default="0">
<opt id="0" name="Nein"/>
<opt id="1" name="Ja"/>
</option>
<option id="kaschierung" name="Folienkaschierung" type="Select" default="1">
<opt id="1" name="ohne"/>
<opt id="2" name="matt kratzfest"/>
<opt id="3" name="glänzend"/>
</option>
<option id="kaschierung_anzahl" name="kaschiert" type="Select" default="1">
<opt id="1" name="einseitig">
<kaschierung>
<grenze>2-3</grenze>
</kaschierung>
</opt>
<opt id="2" name="zweiseitig">
<kaschierung>
<grenze>2-3</grenze>
</kaschierung>
</opt>
</option>
<option id="beilage" name="Beilage einlegen" type="Hidden" default="1">
<opt id="1" name="Nein"/>
<opt id="2" name="unbestimmte Stelle"/>
<opt id="3" name="an bestimmte Stelle"/>
</option>
<option id="absender" name="Absenderadresse" type="Select" default="1">
<opt id="1" name="Uhl-Media"/>
<opt id="2" name="Neutralversand"/>
</option>
<option id="musterversand" name="Belegexemplare" type="Select" default="1">
<opt id="1" name="Nein"/>
<opt id="2" name="Ja">
<auflage>
<grenze formel="8">1-</grenze>
</auflage>
</opt>
</option>
<option id="zusatz_farbwechsel" name="zusätzliche Farbwechsel" type="Hidden" default="0"/>
<option id="zusatz_druckplatten" name="zusätzl. Druckplatten" type="Hidden" default="0"/>
<option id="akkordeon_ende" name="akordeon_ende" type="Hidden"/>
<!-- Ab hier werden die Serviceoptionen abgefragt -->
<option id="qualitaet" name="Qualität" type="Select" default="2">
<!-- <opt id="1" name="EasyValue"/> -->
<opt id="2" name="ISO Standard"/>
<!-- <opt id="3" name="MaxHighEnd"/> -->
</option>
<option id="versand" name="Produktionszeit" type="Select" default="2">
<opt id="1" name="relaX (14 Tage)"/>
<opt id="2" name="Normal (7 Tage)"/>
<opt id="3" name="eXpress (schnellstmögl. nach Rückspr.)"/>
</option>
<option id="online_rabatt" name="Online-Rabatt" type="Select" default="1">
<opt id="0" name="Nein"/>
<opt id="1" name="Ja"/>
</option>
<!-- Ab hier beginnen die Hilfsvalues -->
<option id="calc_anzahl_farben_plano_fa" select="calc_anzahl_farben_plano_fa" type="Template"/>
<option id="calc_bedruckte_seiten_plano_fa" select="calc_bedruckte_seiten_plano_fa" type="Template"/>
<option id="format_offen_breite" name="format_offen_breite" type="Hidden" default="1">
<auflage>
<grenze calc_value="($Vbreite$V+0.4)">1-</grenze>
</auflage>
</option>
<option id="format_offen_hoehe" name="format_offen_hoehe" type="Hidden" default="1">
<auflage>
<grenze calc_value="($Vhoehe$V+0.4)">1-</grenze>
</auflage>
</option>
<option id="hilfsvalue_maschine" name="hilfsvalue_nutzen" type="Hidden" default="1">
<auflage>
<grenze calc_value="(getCalcTableValueOffsetPlano('maschine', $Vpapier_inhalt_papiertyp1$V, $Vpapier_inhalt_papiertyp2$V, $Vpapier_inhalt_papiertyp3$V, $Vpapier_inhalt_papiertyp4$V, $Vpapier_inhalt_papiertyp5$V, $Vpapier_inhalt_papiertyp6$V, $Vpapier_inhalt_papiertyp7$V, $Vpapier_inhalt_papiertyp8$V, $Vpapier_inhalt_papiertyp9$V, $Vpapier_inhalt_papiertyp10$V, $Vpapier_inhalt_papiertyp11$V, $Vpapier_inhalt_papiertyp12$V, $Vpapier_inhalt_papiertyp13$V, $Vpapier_inhalt_papiertyp14$V, $PkostenProDruckplatte$P, 0, $Vpapier_inhalt_grammatur$V, $Vpapier_inhalt_value$V, $Vpapier_inhalt_umschlagen$V, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $Vauflage$V, $CVcalc_anzahl_farben_plano_fa_druckfarben_inhalt$CV, 0, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $CVformat_offen_breite_auflage$CV, $CVformat_offen_hoehe_auflage$CV, $Vdrucklack$V-1, !$Vpapier_inhalt_umschlagen$V))">1-</grenze>
</auflage>
</option>
<option id="calc_anzahl_farbwechsel_plano_fa" select="calc_anzahl_farbwechsel_plano_fa" type="Template"/>
<option id="calc_grammaturformel" name="calc_grammaturformel" type="Hidden" default="1">
<auflage>
<grenze calc_value="((100-(sqrt((150-$Vpapier_inhalt_grammatur$V)*(150-$Vpapier_inhalt_grammatur$V))/5))/100)">1-</grenze>
</auflage>
</option>
<option id="hilfsvalue_nutzen" name="hilfsvalue_nutzen" type="Hidden" default="1">
<auflage>
<grenze calc_value="(getCalcTableValueOffsetPlano('nutzen', $Vpapier_inhalt_papiertyp1$V, $Vpapier_inhalt_papiertyp2$V, $Vpapier_inhalt_papiertyp3$V, $Vpapier_inhalt_papiertyp4$V, $Vpapier_inhalt_papiertyp5$V, $Vpapier_inhalt_papiertyp6$V, $Vpapier_inhalt_papiertyp7$V, $Vpapier_inhalt_papiertyp8$V, $Vpapier_inhalt_papiertyp9$V, $Vpapier_inhalt_papiertyp10$V, $Vpapier_inhalt_papiertyp11$V, $Vpapier_inhalt_papiertyp12$V, $Vpapier_inhalt_papiertyp13$V, $Vpapier_inhalt_papiertyp14$V, $PkostenProDruckplatte$P, 0, $Vpapier_inhalt_grammatur$V, $Vpapier_inhalt_value$V, $Vpapier_inhalt_umschlagen$V, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $Vauflage$V, $CVcalc_anzahl_farben_plano_fa_druckfarben_inhalt$CV, $CVcalc_anzahl_farbwechsel_plano_fa_auflage_druckfarben_inhalt$CV, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $CVformat_offen_breite_auflage$CV, $CVformat_offen_hoehe_auflage$CV, $Vdrucklack$V-1, !$Vpapier_inhalt_umschlagen$V))">1-</grenze>
</auflage>
</option>
<option id="hilfsvalue_ctp" name="hilfsvalue_ctp" type="Hidden" default="1">
<auflage>
<grenze calc_value="(getCalcTableValueOffsetPlano('ctp', $Vpapier_inhalt_papiertyp1$V, $Vpapier_inhalt_papiertyp2$V, $Vpapier_inhalt_papiertyp3$V, $Vpapier_inhalt_papiertyp4$V, $Vpapier_inhalt_papiertyp5$V, $Vpapier_inhalt_papiertyp6$V, $Vpapier_inhalt_papiertyp7$V, $Vpapier_inhalt_papiertyp8$V, $Vpapier_inhalt_papiertyp9$V, $Vpapier_inhalt_papiertyp10$V, $Vpapier_inhalt_papiertyp11$V, $Vpapier_inhalt_papiertyp12$V, $Vpapier_inhalt_papiertyp13$V, $Vpapier_inhalt_papiertyp14$V, $PkostenProDruckplatte$P, 0, $Vpapier_inhalt_grammatur$V, $Vpapier_inhalt_value$V, $Vpapier_inhalt_umschlagen$V, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $Vauflage$V, $CVcalc_anzahl_farben_plano_fa_druckfarben_inhalt$CV, $CVcalc_anzahl_farbwechsel_plano_fa_auflage_druckfarben_inhalt$CV, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $CVformat_offen_breite_auflage$CV, $CVformat_offen_hoehe_auflage$CV, $Vdrucklack$V-1, !$Vpapier_inhalt_umschlagen$V))">1-</grenze>
</auflage>
</option>
<option id="hilfsvalue_druckgaenge" name="hilfsvalue_druckgaenge" type="Hidden" default="1">
<auflage>
<grenze calc_value="(getCalcTableValueOffsetPlano('druckgaenge', $Vpapier_inhalt_papiertyp1$V, $Vpapier_inhalt_papiertyp2$V, $Vpapier_inhalt_papiertyp3$V, $Vpapier_inhalt_papiertyp4$V, $Vpapier_inhalt_papiertyp5$V, $Vpapier_inhalt_papiertyp6$V, $Vpapier_inhalt_papiertyp7$V, $Vpapier_inhalt_papiertyp8$V, $Vpapier_inhalt_papiertyp9$V, $Vpapier_inhalt_papiertyp10$V, $Vpapier_inhalt_papiertyp11$V, $Vpapier_inhalt_papiertyp12$V, $Vpapier_inhalt_papiertyp13$V, $Vpapier_inhalt_papiertyp14$V, $PkostenProDruckplatte$P, 0, $Vpapier_inhalt_grammatur$V, $Vpapier_inhalt_value$V, $Vpapier_inhalt_umschlagen$V, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $Vauflage$V, $CVcalc_anzahl_farben_plano_fa_druckfarben_inhalt$CV, $CVcalc_anzahl_farbwechsel_plano_fa_auflage_druckfarben_inhalt$CV, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $CVformat_offen_breite_auflage$CV, $CVformat_offen_hoehe_auflage$CV, $Vdrucklack$V-1, !$Vpapier_inhalt_umschlagen$V))">1-</grenze>
</auflage>
</option>
<option id="hilfsvalue_maschine_stundensatz" name="hilfsvalue_maschine_stundensatz" type="Hidden" default="1">
<auflage>
<grenze calc_value="(getCalcTableValueOffsetPlano('maschine_stundensatz', $Vpapier_inhalt_papiertyp1$V, $Vpapier_inhalt_papiertyp2$V, $Vpapier_inhalt_papiertyp3$V, $Vpapier_inhalt_papiertyp4$V, $Vpapier_inhalt_papiertyp5$V, $Vpapier_inhalt_papiertyp6$V, $Vpapier_inhalt_papiertyp7$V, $Vpapier_inhalt_papiertyp8$V, $Vpapier_inhalt_papiertyp9$V, $Vpapier_inhalt_papiertyp10$V, $Vpapier_inhalt_papiertyp11$V, $Vpapier_inhalt_papiertyp12$V, $Vpapier_inhalt_papiertyp13$V, $Vpapier_inhalt_papiertyp14$V, $PkostenProDruckplatte$P, 0, $Vpapier_inhalt_grammatur$V, $Vpapier_inhalt_value$V, $Vpapier_inhalt_umschlagen$V, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $Vauflage$V, $CVcalc_anzahl_farben_plano_fa_druckfarben_inhalt$CV, $CVcalc_anzahl_farbwechsel_plano_fa_auflage_druckfarben_inhalt$CV, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $CVformat_offen_breite_auflage$CV, $CVformat_offen_hoehe_auflage$CV, $Vdrucklack$V-1, !$Vpapier_inhalt_umschlagen$V))">1-</grenze>
</auflage>
</option>
<option id="hilfsvalue_fortdurckfalzgeschwindigkeit" name="hilfsvalue_druckgaenge" type="Hidden" default="1">
<auflage>
<grenze calc_value="(((log10($Vauflage$V*$Vauflage$V)*900)*$CVhilfsvalue_gramm_geschwin_auflage$CV)+getCalcTableValueOffsetPlano('fortdruckmaschine', $Vpapier_inhalt_papiertyp1$V, $Vpapier_inhalt_papiertyp2$V, $Vpapier_inhalt_papiertyp3$V, $Vpapier_inhalt_papiertyp4$V, $Vpapier_inhalt_papiertyp5$V, $Vpapier_inhalt_papiertyp6$V, $Vpapier_inhalt_papiertyp7$V, $Vpapier_inhalt_papiertyp8$V, $Vpapier_inhalt_papiertyp9$V, $Vpapier_inhalt_papiertyp10$V, $Vpapier_inhalt_papiertyp11$V, $Vpapier_inhalt_papiertyp12$V, $Vpapier_inhalt_papiertyp13$V, $Vpapier_inhalt_papiertyp14$V, $PkostenProDruckplatte$P, 0, $Vpapier_inhalt_grammatur$V, $Vpapier_inhalt_value$V, $Vpapier_inhalt_umschlagen$V, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $Vauflage$V, $CVcalc_anzahl_farben_plano_fa_druckfarben_inhalt$CV, $CVcalc_anzahl_farbwechsel_plano_fa_auflage_druckfarben_inhalt$CV, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $CVformat_offen_breite_auflage$CV, $CVformat_offen_hoehe_auflage$CV, $Vdrucklack$V-1, !$Vpapier_inhalt_umschlagen$V))">1-</grenze>
</auflage>
</option>
<option id="hilfsvalue_druckplatten" name="hilfsvalue_druckplatten" type="Hidden" default="1">
<auflage>
<grenze calc_value="($CVhilfsvalue_ctp_auflage$CV+intval(!$Vpapier_inhalt_umschlagen$V))">1-</grenze>
</auflage>
</option>
<option id="hilfsvalue_papiermenge" name="hilfsvalue_papiermenge" type="Hidden" default="1">
<auflage>
<grenze calc_value="(getCalcTableValueOffsetPlano('nettobg', $Vpapier_inhalt_papiertyp1$V, $Vpapier_inhalt_papiertyp2$V, $Vpapier_inhalt_papiertyp3$V, $Vpapier_inhalt_papiertyp4$V, $Vpapier_inhalt_papiertyp5$V, $Vpapier_inhalt_papiertyp6$V, $Vpapier_inhalt_papiertyp7$V, $Vpapier_inhalt_papiertyp8$V, $Vpapier_inhalt_papiertyp9$V, $Vpapier_inhalt_papiertyp10$V, $Vpapier_inhalt_papiertyp11$V, $Vpapier_inhalt_papiertyp12$V, $Vpapier_inhalt_papiertyp13$V, $Vpapier_inhalt_papiertyp14$V, $PkostenProDruckplatte$P, 0, $Vpapier_inhalt_grammatur$V, $Vpapier_inhalt_value$V, $Vpapier_inhalt_umschlagen$V, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $Vauflage$V, $CVcalc_anzahl_farben_plano_fa_druckfarben_inhalt$CV, $CVcalc_anzahl_farbwechsel_plano_fa_auflage_druckfarben_inhalt$CV, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $CVformat_offen_breite_auflage$CV, $CVformat_offen_hoehe_auflage$CV, $Vdrucklack$V-1, !$Vpapier_inhalt_umschlagen$V)+getCalcTableValueOffsetPlano('zuschuss', $Vpapier_inhalt_papiertyp1$V, $Vpapier_inhalt_papiertyp2$V, $Vpapier_inhalt_papiertyp3$V, $Vpapier_inhalt_papiertyp4$V, $Vpapier_inhalt_papiertyp5$V, $Vpapier_inhalt_papiertyp6$V, $Vpapier_inhalt_papiertyp7$V, $Vpapier_inhalt_papiertyp8$V, $Vpapier_inhalt_papiertyp9$V, $Vpapier_inhalt_papiertyp10$V, $Vpapier_inhalt_papiertyp11$V, $Vpapier_inhalt_papiertyp12$V, $Vpapier_inhalt_papiertyp13$V, $Vpapier_inhalt_papiertyp14$V, $PkostenProDruckplatte$P, 0, $Vpapier_inhalt_grammatur$V, $Vpapier_inhalt_value$V, $Vpapier_inhalt_umschlagen$V, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $Vauflage$V, $CVcalc_anzahl_farben_plano_fa_druckfarben_inhalt$CV, $CVcalc_anzahl_farbwechsel_plano_fa_auflage_druckfarben_inhalt$CV, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $CVformat_offen_breite_auflage$CV, $CVformat_offen_hoehe_auflage$CV, $Vdrucklack$V-1, !$Vpapier_inhalt_umschlagen$V))">1-</grenze>
</auflage>
</option>
<option id="hilfsvalue_gramm_geschwin" name="hilfsvalue_gramm_geschwin" type="Hidden" default="1">
<auflage>
<grenze calc_value="((100-sqrt((150-$Vpapier_inhalt_grammatur$V)*(150-$Vpapier_inhalt_grammatur$V))/5)/100)">1-</grenze>
</auflage>
</option>
<option id="hilfsvalue_gewicht" name="hilfsvalue_gewicht" type="Hidden" default="1">
<auflage>
<grenze calc_value="(1.1*$Vbreite$V*$Vhoehe$V*$Vauflage$V*$Vpapier_inhalt_grammatur$V/10000000)">1-</grenze>
</auflage>
</option>
<!-- Ab hier beginnt die Kalkulation -->
<option id="calc_vorstufe_datenuebername" name="calc_vorstufe_datenuebername" type="Hidden" default="1">
<auflage>
<grenze calc_value="(20+$CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV*5)/60*$Phour_druckvorstufe$P">1-</grenze>
</auflage>
</option>
<option id="calc_vorstufe_druckplatten" name="calc_vorstufe_druckplatten" type="Hidden" default="1">
<auflage>
<grenze calc_value="($CVhilfsvalue_druckplatten_auflage$CV*$PkostenProDruckplatte$P)">1-</grenze>
</auflage>
</option>
<option id="calc_vorstufe_sortenaufschlag" name="calc_vorstufe_sortenaufschlag" type="Hidden" default="1">
<sortenzahl>
<grenze value="1">
<auflage>
<grenze calc_value="0">1-</grenze>
</auflage>
</grenze>
<grenze value="2-">
<auflage formel="($CVhilfsvalue_nutzen_auflage$CV/$Vsortenzahl$V &lt; $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV)">
<grenze calc_value="(($Vsortenzahl$V-1)*10+1.2*ceil(($Vsortenzahl$V-1)/$CVhilfsvalue_nutzen_auflage$CV*$CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV) *($CVcalc_vorstufe_druckplatten_auflage$CV+($PruestZeitJeDruckplatte$P*$CVhilfsvalue_druckplatten_auflage$CV/60*$CVhilfsvalue_maschine_stundensatz_auflage$CV)))">1</grenze>
<grenze calc_value="(($Vsortenzahl$V-1)*(10+$CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV/20))">0</grenze>
</auflage>
</grenze>
</sortenzahl>
</option>
<!--
<option id="debug" name="debug" type="Hidden" default="1">
<auflage>
<grenze calc_value="(($Vsortenzahl$V-1)/$CVhilfsvalue_nutzen_auflage$CV*$CVcalc_anzahl_farben_plano_fa_druckfarben_inhalt$CV)">1-</grenze>
</auflage>
</option>
-->
<option id="calc_druck_farbwechsel" name="calc_druck_farbwechsel" type="Hidden" default="1">
<auflage formel="$CVcalc_anzahl_farbwechsel_plano_fa_auflage_druckfarben_inhalt$CV">
<grenze calc_value="($CVcalc_anzahl_farbwechsel_plano_fa_auflage_druckfarben_inhalt$CV*$PfarbwechselZeit$P)/60*$CVhilfsvalue_maschine_stundensatz_auflage$CV">1-</grenze>
</auflage>
</option>
<option id="calc_druck_ruestkosten" name="calc_druck_ruestkosten" type="Hidden" default="1">
<auflage>
<grenze calc_value="(20*$CVhilfsvalue_druckgaenge_auflage$CV+($CVhilfsvalue_druckplatten_auflage$CV*$PruestZeitJeDruckplatte$P))/60*$CVhilfsvalue_maschine_stundensatz_auflage$CV">1-</grenze>
</auflage>
</option>
<option id="calc_druck_fortdruck" name="calc_druck_fortdruck" type="Hidden" default="1">
<auflage>
<grenze calc_value="(($CVhilfsvalue_papiermenge_auflage$CV*$CVhilfsvalue_druckgaenge_auflage$CV)/$CVhilfsvalue_fortdurckfalzgeschwindigkeit_auflage$CV*60)*$CVhilfsvalue_maschine_stundensatz_auflage$CV/60">1-</grenze>
</auflage>
</option>
<option id="calc_aufpreis_falzen" name="calc_aufpreis_falzen" type="Hidden" default="1">
<falzbrueche>
<grenze value="keine">
<auflage>
<grenze calc_value="0">1-</grenze>
</auflage>
</grenze>
<grenze value="1-">
<auflage formel="$Vhoehe$V &gt; 13.9 &amp;&amp; $Vbreite$V &gt; 17.9 &amp;&amp; $Vbreite$V &lt; 56 &amp;&amp; $Vhoehe$V &lt; 56">
<grenze calc_value="(15+$Vfalzbrueche$V*10+$Vauflage$V/((log10($Vauflage$V*$Vauflage$V)*900)*$CVhilfsvalue_gramm_geschwin_auflage$CV)*60)*$Pstundensatz_wtv_maschinen$P/60">1</grenze>
<grenze calc_value="(15+$Vfalzbrueche$V*10+$Vauflage$V/((log10($Vauflage$V*$Vauflage$V)*900)*$CVhilfsvalue_gramm_geschwin_auflage$CV)*60)*$Pstundensatz_wtv_maschinen$P*$Pfaktor_klein_gross_falzung$P/60">0</grenze>
</auflage>
</grenze>
</falzbrueche>
</option>
<option id="calc_wtv_nuten" name="calc_wtv_nuten" type="Hidden" default="1">
<auflage formel="$Vpapier_inhalt_grammatur$V &gt; 169 &amp;&amp; $Vfalzbrueche$V != 'keine'">
<grenze calc_value="0">0</grenze>
<grenze calc_value="($Vauflage$V/4000+0.5)*$Pstundensatz_wtv_maschinen$P">1</grenze>
</auflage>
</option>
<option id="calc_wtv_endschneiden" name="calc_wtv_endschneiden" type="Hidden" default="1">
<auflage>
<grenze calc_value="(15+(sqrt($Vauflage$V/2)))/60*$Pstundensatz_wtv$P">1-</grenze>
</auflage>
</option>
<!-- Kosten Verarbeitung, Leimung LTB eingefügt -->
<option id="calc_leimung" name="calc_leimung" type="Hidden" default="1">
<leimung>
<grenze calc_value="(1/pow(2,log10($Vauflage$V/50)))*($Vauflage$V)+$Pfixkosten_blockleimung$P">1-</grenze>
</leimung>
</option>
<option id="calc_druckfarbe" name="calc_druckfarbe" type="Hidden" default="1">
<auflage>
<grenze calc_value="($CVhilfsvalue_papiermenge_auflage$CV*($CVcalc_anzahl_farben_plano_fa_druckfarben_inhalt$CV+$Vdrucklack$V-1)/1000*$CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV)*$Pdurckfarbe_preis_je_bogen$P">1-</grenze>
</auflage>
</option>
<option id="calc_papier" name="calc_papier" type="Hidden" default="1">
<auflage>
<grenze calc_value="(getCalcTableValueOffsetPlano('bogen_breite', $Vpapier_inhalt_papiertyp1$V, $Vpapier_inhalt_papiertyp2$V, $Vpapier_inhalt_papiertyp3$V, $Vpapier_inhalt_papiertyp4$V, $Vpapier_inhalt_papiertyp5$V, $Vpapier_inhalt_papiertyp6$V, $Vpapier_inhalt_papiertyp7$V, $Vpapier_inhalt_papiertyp8$V, $Vpapier_inhalt_papiertyp9$V, $Vpapier_inhalt_papiertyp10$V, $Vpapier_inhalt_papiertyp11$V, $Vpapier_inhalt_papiertyp12$V, $Vpapier_inhalt_papiertyp13$V, $Vpapier_inhalt_papiertyp14$V, $PkostenProDruckplatte$P, 0, $Vpapier_inhalt_grammatur$V, $Vpapier_inhalt_value$V, $Vpapier_inhalt_umschlagen$V, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $Vauflage$V, $CVcalc_anzahl_farben_plano_fa_druckfarben_inhalt$CV, $CVcalc_anzahl_farbwechsel_plano_fa_auflage_druckfarben_inhalt$CV, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $CVformat_offen_breite_auflage$CV, $CVformat_offen_hoehe_auflage$CV, $Vdrucklack$V-1, !$Vpapier_inhalt_umschlagen$V)*getCalcTableValueOffsetPlano('bogen_hoehe', $Vpapier_inhalt_papiertyp1$V, $Vpapier_inhalt_papiertyp2$V, $Vpapier_inhalt_papiertyp3$V, $Vpapier_inhalt_papiertyp4$V, $Vpapier_inhalt_papiertyp5$V, $Vpapier_inhalt_papiertyp6$V, $Vpapier_inhalt_papiertyp7$V, $Vpapier_inhalt_papiertyp8$V, $Vpapier_inhalt_papiertyp9$V, $Vpapier_inhalt_papiertyp10$V, $Vpapier_inhalt_papiertyp11$V, $Vpapier_inhalt_papiertyp12$V, $Vpapier_inhalt_papiertyp13$V, $Vpapier_inhalt_papiertyp14$V, $PkostenProDruckplatte$P, 0, $Vpapier_inhalt_grammatur$V, $Vpapier_inhalt_value$V, $Vpapier_inhalt_umschlagen$V, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $Vauflage$V, $CVcalc_anzahl_farben_plano_fa_druckfarben_inhalt$CV, $CVcalc_anzahl_farbwechsel_plano_fa_auflage_druckfarben_inhalt$CV, $CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV, $CVformat_offen_breite_auflage$CV, $CVformat_offen_hoehe_auflage$CV, $Vdrucklack$V-1, !$Vpapier_inhalt_umschlagen$V)*$Vpapier_inhalt_grammatur$V/10000000*$CVhilfsvalue_papiermenge_auflage$CV)*($Vpapier_inhalt_value$V*($Ppapierzuschlag_plano$P-(min($CVhilfsvalue_gewicht_auflage$CV/5000,0.2))))/100">1-</grenze>
</auflage>
</option>
<!-- Sammelform Hilfsvariablen -->
<option id="hilfsvalue_sammelform_format" name="hilfsvalue_sammelform_format" type="Hidden" default="1">
<auflage formel="$CVhilfsvalue_nutzen_auflage$CV">
<grenze calc_value="$Fhilfsvalue_sammelform_format_plano$F">1-</grenze>
</auflage>
</option>
<option id="hilfsvalue_sammelform_menge" name="hilfsvalue_sammelform_menge" type="Hidden" default="1">
<auflage>
<grenze calc_value="(getSammelformMengenAbschlagPlano($Vauflage$V))">1-</grenze>
</auflage>
</option>
<option id="hilfsvalue_abschlag_sammelform" name="hilfsvalue_abschlag_sammelform" type="Hidden" default="1">
<auflage>
<grenze calc_value="$Fhilfsvalue_abschlag_sammelform_plano$F">1-</grenze>
</auflage>
</option>
<!--Zusatz Optionen -->
<option id="calc_zusatz_anderes_format" name="calc_zusatz_anderes_format" type="Hidden" default="1">
<dateiformat_geliefert>
<grenze calc_value="0">1</grenze>
<grenze calc_value="$Pplano_fa_aufpreis_anderes_dateiformat$P">2,3,4</grenze>
</dateiformat_geliefert>
</option>
<option id="calc_zusatz_softproof" name="calc_zusatz_softproof" type="Hidden" default="1">
<korrekturabzug>
<grenze calc_value="0">1,2,4</grenze>
<grenze calc_value="max($Pplano_digitalproof_minimal$P, (($Vbreite$V*$Vhoehe$V)/62*$Vsortenzahl$V*$CVcalc_bedruckte_seiten_plano_fa_druckfarben_inhalt$CV))">3</grenze>
</korrekturabzug>
</option>
<option id="calc_zusatz_buendeln" name="calc_zusatz_buendeln" type="Hidden" default="1">
<buendeln>
<grenze calc_value="0">0</grenze>
<grenze calc_value="($Pplano_fa_fixpreis_buendeln$P+$Vauflage$V/$Vbuendeln$V*$Pplano_fa_preis_je_buendel$P)">1-</grenze>
</buendeln>
</option>
<option id="calc_zusatz_perforation" name="calc_zusatz_perforation" type="Hidden" default="1">
<perforation>
<grenze calc_value="0">0</grenze>
<grenze calc_value="($Pplano_fa_fixpreis_perforation$P+$Vauflage$V/1000*$Pplano_fa_tsdpreis_perforation$P)">1-</grenze>
</perforation>
</option>
<option id="calc_zusatz_druckplatten" name="calc_zusatz_druckplatten" type="Hidden" default="1">
<zusatz_druckplatten>
<grenze calc_value="0">0</grenze>
<grenze calc_value="($Vzusatz_druckplatten$V*(($CVhilfsvalue_maschine_stundensatz_auflage$CV/60*$PruestZeitJeDruckplatte$P)+$PkostenProDruckplatte$P+20))">1-</grenze>
</zusatz_druckplatten>
</option>
<option id="calc_zusatz_farbwechsel" name="calc_zusatz_farbwechsel" type="Hidden" default="1">
<zusatz_farbwechsel>
<grenze calc_value="0">0</grenze>
<grenze calc_value="($Vzusatz_farbwechsel$V*($PfarbwechselZeit$P*$CVhilfsvalue_maschine_stundensatz_auflage$CV/60))">1-</grenze>
</zusatz_farbwechsel>
</option>
<option id="calc_zusatz_duftdruck" name="calc_zusatz_duftdruck" type="Hidden" default="1">
<duftdruck>
<grenze calc_value="0">0</grenze>
<grenze calc_value="($Vduftdruck$V*5*$Vauflage$V/1000+300)">1-</grenze>
</duftdruck>
</option>
<option id="calc_zusatz_praegung" name="calc_zusatz_praegung" type="Hidden" default="1">
<praegung>
<grenze calc_value="0">1</grenze>
<grenze calc_value="((($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_praegen_var2$P:$Pplano_praegen_var2$P)+$Vauflage$V/1000*(($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_praegen_fix2$P:$Pplano_praegen_fix2$P))">2</grenze>
<grenze calc_value="((($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_praegen_var2$P:$Pplano_praegen_var2$P)+(sqrt($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV)*2+75)+$Vauflage$V/1000*(($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_praegen_fix2$P:$Pplano_praegen_fix2$P))">3</grenze>
</praegung>
</option>
<option id="calc_zusatz_stanzung" name="calc_zusatz_stanzung" type="Hidden" default="1">
<stanzung>
<grenze calc_value="0">1</grenze>
<grenze calc_value="((($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_stanzen_fix2$P:$Pplano_stanzen_fix2$P)+$Vauflage$V/1000*(($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_stanzen_var2$P:$Pplano_stanzen_var2$P))">2</grenze>
<grenze calc_value="min((($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_stanzen_fix2$P:$Pplano_stanzen_fix2$P)+(sqrt($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV)*2+50)+$Vauflage$V/1000*(($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_stanzen_var2$P:$Pplano_stanzen_var2$P),(($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_stanzen_fix2$P:$Pplano_stanzen_fix2$P)+2*(sqrt($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV)*2+50)+$Vauflage$V/1000*(($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_stanzen_var2$P:$Pplano_stanzen_var2$P)/2,(($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_stanzen_fix2$P:$Pplano_stanzen_fix2$P)+3*(sqrt($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV)*2+50)+$Vauflage$V/1000*(($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_stanzen_var2$P:$Pplano_stanzen_var2$P)/3,(($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_stanzen_fix2$P:$Pplano_stanzen_fix2$P)+4*(sqrt($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV)*2+50)+$Vauflage$V/1000*(($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? $Pplano_stanzen_var2$P:$Pplano_stanzen_var2$P)/4)">3</grenze>
</stanzung>
</option>
<option id="calc_zusatz_verschluss" name="calc_zusatz_verschluss" type="Hidden" default="1">
<verschluss>
<grenze calc_value="0">0</grenze>
<grenze calc_value="($Pklebepunkte_lose_pro_tausend$P/1000*$Vauflage$V+$Pklebepunkte_lose_fix$P)">1</grenze>
<grenze calc_value="($Pklebepunkte_vorkonf_pro_tausend$P/1000*$Vauflage$V+$Pklebepunkte_vorkonf_fix$P)">2</grenze>
<grenze calc_value="($Phaftstreifen_lose_pro_tausend$P/1000*$Vauflage$V+$Phaftstreifen_lose_fix$P)">3</grenze>
<grenze calc_value="($Phaftstreifen_vorkonf_pro_tausend$P/1000*$Vauflage$V+$Phaftstreifen_vorkonf_fix$P)">4</grenze>
<grenze calc_value="((($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? 25:85)+(sqrt($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV)*2+50)+$Vauflage$V/1000*(($CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV &lt; 682)? 20:33))">5</grenze>
</verschluss>
</option>
<option id="calc_zusatz_beilage" name="calc_zusatz_beilage" type="Hidden" default="1">
<beilage>
<grenze calc_value="0">1</grenze>
<grenze calc_value="(35*$Vauflage$V/1000)">2</grenze>
<grenze calc_value="(45*$Vauflage$V/1000)">3</grenze>
</beilage>
</option>
<option id="calc_zusatz_nummerierung" name="calc_zusatz_nummerierung" type="Hidden" default="1">
<nummerierung>
<grenze calc_value="0">1</grenze>
<grenze calc_value="(30+(30-min($Vauflage$V/30000*8,20))*$Vauflage$V/1000)">2</grenze>
<grenze calc_value="(30+(50-min($Vauflage$V/30000*8,20))*$Vauflage$V/1000)">3-4</grenze>
</nummerierung>
</option>
<option id="calc_zusatz_laserstanzung" name="calc_zusatz_laserstanzung" type="Hidden" default="1">
<laserstanzung>
<grenze calc_value="0">0</grenze>
<grenze calc_value="($Vlaserstanzung$V*$Pplano_fa_stckpreis_laserstanzung$P*$Vauflage$V+$Pplano_fa_fixpreis_laserstanzung$P)">1-</grenze>
</laserstanzung>
</option>
<option id="calc_zusatz_ecken_runden" name="calc_zusatz_ecken_runden" type="Hidden" default="1">
<ecken_runden>
<grenze calc_value="0">0</grenze>
<grenze calc_value="(($Vauflage$V*$Pplano_fa_tsdpreis_ecken_runden$P/1000)+($plano_fa_fixpreis_ecken_runden))">1-</grenze>
</ecken_runden>
</option>
<option id="calc_zusatz_bohren_lochen" name="calc_zusatz_bohren_lochen" type="Hidden" default="1">
<bohren_lochen>
<grenze calc_value="0">0</grenze>
<grenze calc_value="($Pplano_fa_fixpreis_bohren$P+$Vauflage$V/1000*2*$Pplano_fa_tsdpreis_bohren$P)">1-2</grenze>
<grenze calc_value="($Pplano_fa_fixpreis_bohren$P+$Vauflage$V/1000*$Vbohren_lochen$V*$Pplano_fa_tsdpreis_bohren$P)">3-</grenze>
</bohren_lochen>
</option>
<option id="calc_zusatz_kaschierung" name="calc_zusatz_kaschierung" type="Hidden" default="1">
<kaschierung>
<grenze calc_value="0">1</grenze>
<grenze calc_value="($Vkaschierung_anzahl$V*max(95,(0.8*$Vbreite$V*$Vhoehe$V/10000*$Vauflage$V)))">2</grenze>
<grenze calc_value="($Vkaschierung_anzahl$V*max(95,(0.6*$Vbreite$V*$Vhoehe$V/10000*$Vauflage$V)))">3</grenze>
</kaschierung>
</option>
<option id="calc_eigenkosten" name="calc_eigenkosten" type="Hidden" default="1">
<auflage>
<grenze calc_value="( floatval($CVcalc_vorstufe_datenuebername_auflage$CV)+ floatval($CVcalc_vorstufe_druckplatten_auflage$CV)+ floatval($CVcalc_vorstufe_sortenaufschlag_sortenzahl_auflage$CV)+ floatval($CVcalc_druck_farbwechsel_auflage$CV)+ floatval($CVcalc_druck_ruestkosten_auflage$CV)+ floatval($CVcalc_druck_fortdruck_auflage$CV)+ floatval($CVcalc_aufpreis_falzen_falzbrueche_auflage$CV)+ floatval($CVcalc_wtv_nuten_auflage$CV)+ floatval($CVcalc_wtv_endschneiden_auflage$CV)+ floatval($CVcalc_zusatz_anderes_format_dateiformat_geliefert$CV)+ floatval($CVcalc_zusatz_softproof_korrekturabzug$CV)+ floatval($CVcalc_zusatz_buendeln_buendeln$CV)+ floatval($CVcalc_zusatz_perforation_perforation$CV)+ floatval($CVcalc_zusatz_ecken_runden_ecken_runden$CV)+ floatval($CVcalc_zusatz_bohren_lochen_bohren_lochen$CV)+ floatval($CVcalc_zusatz_beilage_beilage$CV)+floatval($CVcalc_leimung_leimung$CV)+ floatval($CVcalc_zusatz_druckplatten_zusatz_druckplatten$CV)+ floatval($CVcalc_zusatz_farbwechsel_zusatz_farbwechsel$CV))">1-</grenze>
</auflage>
</option>
<option id="calc_rabatt_aktionsrabatt" name="calc_rabatt_aktionsrabatt" type="Hidden" default="1">
<auflage>
<grenze calc_value="((($CVcalc_eigenkosten_auflage$CV)/100*$Paktionsrabatt_plano_p$P)+$Paktionsrabatt_plano_f$P)">1-</grenze>
</auflage>
</option>
<option id="calc_rabatt_kundengruppe" name="calc_rabatt_kundengruppe" type="Hidden" default="1">
<auflage>
<grenze calc_value="((($CVcalc_eigenkosten_auflage$CV)/100*floatval($PcalcValueAccount1$P))+(($CVcalc_eigenkosten_auflage$CV)/100*floatval($PcalcValue1$P))+floatval($PcalcValue2$P)+floatval($PcalcValueAccount2$P))">1-</grenze>
</auflage>
</option>
<option id="calc_rabatt_onlinerabatt" name="calc_rabatt_onlinerabatt" type="Hidden" default="1">
<online_rabatt>
<grenze calc_value="(0)">0</grenze>
<grenze calc_value="((($CVcalc_eigenkosten_auflage$CV)/100*$Ponlinerabatt_plano_p$P)+$Ponlinerabatt_plano_f$P)">1</grenze>
</online_rabatt>
</option>
<option id="rabatt_onlinerabatt" name="rabatt_onlinerabatt" type="Hidden" default="1" exportAjax="1">
<online_rabatt>
<grenze formel="(0)">0</grenze>
<grenze formel="((($CVcalc_eigenkosten_auflage$CV)/100*$Ponlinerabatt_plano_p$P)+$Ponlinerabatt_plano_f$P)">1</grenze>
</online_rabatt>
</option>
<option id="calc_eigenkosten_gesamt" name="calc_eigenkosten_gesamt" type="Hidden" default="1">
<auflage>
<grenze calc_value="($CVcalc_eigenkosten_auflage$CV)">1-</grenze>
</auflage>
</option>
<option id="calc_fremdkosten" name="calc_fremdkosten" type="Hidden" default="1">
<auflage>
<grenze calc_value="( floatval($CVcalc_druckfarbe_auflage$CV)+ floatval($CVcalc_papier_auflage$CV)+ floatval($CVcalc_zusatz_duftdruck_duftdruck$CV)+ floatval($CVcalc_zusatz_laserstanzung_laserstanzung$CV)+ floatval($CVcalc_zusatz_kaschierung_kaschierung$CV)+ floatval($CVcalc_zusatz_praegung_praegung$CV)+ floatval($CVcalc_zusatz_stanzung_stanzung$CV)+ floatval($CVcalc_zusatz_nummerierung_nummerierung$CV)+ floatval($CVcalc_zusatz_verschluss_verschluss$CV) )">1-</grenze>
</auflage>
</option>
<option id="calc_sum_sammelform" name="calc_sum_sammelform" type="Hidden" default="1">
<auflage>
<grenze calc_value="( floatval($CVcalc_vorstufe_datenuebername_auflage$CV)+ floatval($CVcalc_vorstufe_druckplatten_auflage$CV)+ floatval($CVcalc_vorstufe_sortenaufschlag_sortenzahl_auflage$CV)+ floatval($CVcalc_druck_farbwechsel_auflage$CV)+ floatval($CVcalc_druck_ruestkosten_auflage$CV)+ floatval($CVcalc_druck_fortdruck_auflage$CV)+ floatval($CVcalc_leimung_leimung$CV)+ floatval($CVcalc_aufpreis_falzen_falzbrueche_auflage$CV)+ floatval($CVcalc_wtv_nuten_auflage$CV)+ floatval($CVcalc_wtv_endschneiden_auflage$CV)+ floatval($CVcalc_druckfarbe_auflage$CV)+ floatval($CVcalc_papier_auflage$CV) )">1-</grenze>
</auflage>
</option>
<option id="calc_sammelform_inhalt" name="calc_sammelform_inhalt" type="Hidden" default="1">
<druckfarben_inhalt>
<grenze value="1,2,3,18,19">
<auflage formel="$Vpapier_inhalt_sammelform$V">
<grenze calc_value="0">1</grenze>
<grenze calc_value="max($Psammelform_plano_fa_happy$P/100*$CVhilfsvalue_abschlag_sammelform_auflage$CV, ($CVcalc_eigenkosten_gesamt_auflage$CV*$Pplano_fa_maxabschlag_proz_ek$P/100-$Pplano_fa_maxabschlag_abs$P)*-1)">2</grenze>
<grenze calc_value="max($Psammelform_plano_fa_eq$P/100*$CVhilfsvalue_abschlag_sammelform_auflage$CV, ($CVcalc_eigenkosten_gesamt_auflage$CV*$Pplano_fa_maxabschlag_proz_ek$P/100-$Pplano_fa_maxabschlag_abs$P)*-1)">3</grenze>
<grenze calc_value="max($Psammelform_plano_fa_sense$P/100*$CVhilfsvalue_abschlag_sammelform_auflage$CV, ($CVcalc_eigenkosten_gesamt_auflage$CV*$Pplano_fa_maxabschlag_proz_ek$P/100-$Pplano_fa_maxabschlag_abs$P)*-1)">4</grenze>
<grenze calc_value="max($Psammelform_plano_fa_sky$P/100*$CVhilfsvalue_abschlag_sammelform_auflage$CV, ($CVcalc_eigenkosten_gesamt_auflage$CV*$Pplano_fa_maxabschlag_proz_ek$P/100-$Pplano_fa_maxabschlag_abs$P)*-1)">5</grenze>
<grenze calc_value="max($Psammelform_plano_fa_glam$P/100*$CVhilfsvalue_abschlag_sammelform_auflage$CV, ($CVcalc_eigenkosten_gesamt_auflage$CV*$Pplano_fa_maxabschlag_proz_ek$P/100-$Pplano_fa_maxabschlag_abs$P)*-1)">6</grenze>
<grenze calc_value="max($Psammelform_plano_fa_post$P/100*$CVhilfsvalue_abschlag_sammelform_auflage$CV, ($CVcalc_eigenkosten_gesamt_auflage$CV*$Pplano_fa_maxabschlag_proz_ek$P/100-$Pplano_fa_maxabschlag_abs$P)*-1)">7</grenze>
</auflage>
</grenze>
<grenze value="4,5,6,7,8,9,10,11,12,13,14,15,16,17,20,21,22,23">
<auflage>
<grenze calc_value="0">1-</grenze>
</auflage>
</grenze>
</druckfarben_inhalt>
</option>
<option id="calc_rabatt_reduct" name="calc_rabatt_reduct" type="Hidden" default="1">
<druckfarben_inhalt>
<grenze value="1,2,3,18,19">
<auflage formel="$Vpapier_inhalt_sammelform$V">
<grenze calc_value="1">1</grenze>
<grenze calc_value="((($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV)+($CVcalc_sammelform_inhalt_druckfarben_inhalt_auflage$CV))/(($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV)))">2-</grenze>
</auflage>
</grenze>
<grenze value="4,5,6,7,8,9,10,11,12,13,14,15,16,17,20,21,22,23">
<auflage>
<grenze calc_value="1">1-</grenze>
</auflage>
</grenze>
</druckfarben_inhalt>
</option>
<option id="calc_quali" name="calc_quali" type="Hidden" default="1">
<qualitaet>
<grenze value="1">
<versand>
<grenze formel="($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV)-(($Pplano_easy_value_p$P/100*($CVcalc_eigenkosten_gesamt_auflage$CV))*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)+($Pplano_easy_value_f$P*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)-(($Pplano_relax_p$P/100*($CVcalc_eigenkosten_gesamt_auflage$CV))*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)+($Pplano_relax_f$P*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)">1</grenze>
<grenze formel="($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV)-(($Pplano_easy_value_p$P/100*($CVcalc_eigenkosten_gesamt_auflage$CV))*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)+($Pplano_easy_value_f$P*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)">2</grenze>
<grenze formel="($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV)-(($Pplano_easy_value_p$P/100*($CVcalc_eigenkosten_gesamt_auflage$CV))*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)+($Pplano_easy_value_f$P*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)+($Pplano_express_p$P*(($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV))/100)+$Pplano_express_f$P">3</grenze>
</versand>
</grenze>
<grenze value="2">
<versand>
<grenze formel="($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV)-(($Pplano_relax_p$P/100*($CVcalc_eigenkosten_gesamt_auflage$CV))*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)+($Pplano_relax_f$P*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)">1</grenze>
<grenze formel="($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV)+0">2</grenze>
<grenze formel="($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV)+($Pplano_express_p$P*(($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV))/100)+$Pplano_express_f$P">3</grenze>
</versand>
</grenze>
<grenze value="3">
<versand>
<grenze formel="($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV)-(($Pplano_relax_p$P/100*($CVcalc_eigenkosten_gesamt_auflage$CV))*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)+($Pplano_relax_f$P*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)+($Pplano_max_highend_p$P*(($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV))/100)+$Pplano_max_highend_f$P">1</grenze>
<grenze formel="($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV)+($Pplano_max_highend_p$P*(($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV))/100)+$Pplano_max_highend_f$P">2</grenze>
<grenze formel="($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV)+($Pplano_express_p$P*(($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV))/100)+$Pplano_express_f$P+($Pplano_max_highend_p$P*(($CVcalc_eigenkosten_gesamt_auflage$CV)+($CVcalc_fremdkosten_auflage$CV))/100)+$Pplano_max_highend_f$P">3</grenze>
</versand>
</grenze>
</qualitaet>
</option>
<option id="calc_simple_sammelform" name="calc_simple_sammelform" type="Hidden" default="1">
<auflage>
<grenze formel="$CVcalc_sammelform_inhalt_druckfarben_inhalt_auflage$CV">1-</grenze>
</auflage>
</option>
<option id="rabatt_aktionsrabatt" name="rabatt_aktionsrabatt" type="Hidden" default="1" exportAjax="1">
<auflage>
<grenze formel="(((($CVcalc_eigenkosten_auflage$CV)/100*$Paktionsrabatt_plano_p$P)+$Paktionsrabatt_plano_f$P)*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)">1-</grenze>
</auflage>
</option>
<option id="rabatt_kundengruppe" name="rabatt_kundengruppe" type="Hidden" default="1" exportAjax="1">
<auflage>
<grenze formel="(((($CVcalc_eigenkosten_auflage$CV)/100*floatval($PcalcValueAccount1$P))+(($CVcalc_eigenkosten_auflage$CV)/100*floatval($PcalcValue1$P))+floatval($PcalcValue2$P)+floatval($PcalcValueAccount2$P))*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)">1-</grenze>
</auflage>
</option>
<option id="calc_rabatte" name="calc_rabatte" type="Hidden" default="1">
<auflage>
<grenze formel="((($CVcalc_rabatt_aktionsrabatt_auflage$CV*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)+($CVcalc_rabatt_kundengruppe_auflage$CV*$CVcalc_rabatt_reduct_druckfarben_inhalt_auflage$CV)+($CVcalc_rabatt_onlinerabatt_online_rabatt$CV))*-1)">1-</grenze>
</auflage>
</option>
<option id="weight" name="weight" type="Hidden" default="1">
<auflage>
<grenze formel="($CVhilfsvalue_gewicht_auflage$CV)*1000">1-</grenze>
</auflage>
</option>
<uploads><upload id="inhalt" name="Druckdaten" description="Bitte laden sie eine PDF für den Druck hoch"/></uploads></artikel>
</kalkulation>

View File

@ -0,0 +1,163 @@
<root>
<option id="calc_farbigkeit_farbwechsel_inhalt_brosch_kba" name="calc_farbigkeit_farbwechsel_inhalt_brosch_kba" type="Hidden" default="1">
<druckfarben_inhalt>
<grenze calc_value="0">1,5</grenze>
<grenze calc_value="1">2,6</grenze>
<grenze calc_value="2">3,7</grenze>
<grenze calc_value="3">4,8</grenze>
</druckfarben_inhalt>
</option>
<option id="calc_anzahl_druckplatten_inhalt_brosch_kba" name="calc_anzahl_druckplatten_inhalt_brosch_kba" type="Hidden" default="1">
<druckfarben_inhalt>
<grenze calc_value="1">1,2</grenze>
<grenze calc_value="2">3</grenze>
<grenze calc_value="3">4</grenze>
<grenze calc_value="4">5</grenze>
<grenze calc_value="5">6</grenze>
<grenze calc_value="6">7</grenze>
<grenze calc_value="7">8</grenze>
</druckfarben_inhalt>
</option>
<option id="calc_farbigkeit_farbwechsel_umschlag_brosch_kba" name="calc_farbigkeit_farbwechsel_umschlag_brosch_kba" type="Hidden" default="1">
<druckfarben_umschlag>
<grenze calc_value="(0+(($Vdruckplatte_option_umschlag$V == 3 || $Vdruckplatte_option_umschlag$V == 2 || $Vdruckplatte_option_umschlag$V == 5 || $Vdruckplatte_option_umschlag$V == 4)? 1:0))">1,5,6</grenze>
<grenze calc_value="(1+(($Vdruckplatte_option_umschlag$V == 3 || $Vdruckplatte_option_umschlag$V == 2 || $Vdruckplatte_option_umschlag$V == 5 || $Vdruckplatte_option_umschlag$V == 4)? 1:0))">2,7</grenze>
<grenze calc_value="(2+(($Vdruckplatte_option_umschlag$V == 3 || $Vdruckplatte_option_umschlag$V == 2 || $Vdruckplatte_option_umschlag$V == 5 || $Vdruckplatte_option_umschlag$V == 4)? 1:0))">3,8</grenze>
<grenze calc_value="(3+(($Vdruckplatte_option_umschlag$V == 3 || $Vdruckplatte_option_umschlag$V == 2 || $Vdruckplatte_option_umschlag$V == 5 || $Vdruckplatte_option_umschlag$V == 4)? 1:0))">4,9</grenze>
</druckfarben_umschlag>
</option>
<option id="calc_anzahl_druckplatten_umschlag_brosch_kba" name="calc_anzahl_druckplatten_umschlag_brosch_kba" type="Hidden" default="1">
<druckfarben_umschlag>
<grenze calc_value="(1+(($Vdruckplatte_option_umschlag$V == 3 || $Vdruckplatte_option_umschlag$V == 2 || $Vdruckplatte_option_umschlag$V == 5 || $Vdruckplatte_option_umschlag$V == 4)? 1:0))">1,2</grenze>
<grenze calc_value="(2+(($Vdruckplatte_option_umschlag$V == 3 || $Vdruckplatte_option_umschlag$V == 2 || $Vdruckplatte_option_umschlag$V == 5 || $Vdruckplatte_option_umschlag$V == 4)? 1:0))">3</grenze>
<grenze calc_value="(3+(($Vdruckplatte_option_umschlag$V == 3 || $Vdruckplatte_option_umschlag$V == 2 || $Vdruckplatte_option_umschlag$V == 5 || $Vdruckplatte_option_umschlag$V == 4)? 1:0))">4</grenze>
<grenze calc_value="(4+(($Vdruckplatte_option_umschlag$V == 3 || $Vdruckplatte_option_umschlag$V == 2 || $Vdruckplatte_option_umschlag$V == 5 || $Vdruckplatte_option_umschlag$V == 4)? 1:0))">5,6</grenze>
<grenze calc_value="(5+(($Vdruckplatte_option_umschlag$V == 3 || $Vdruckplatte_option_umschlag$V == 2 || $Vdruckplatte_option_umschlag$V == 5 || $Vdruckplatte_option_umschlag$V == 4)? 1:0))">7</grenze>
<grenze calc_value="(6+(($Vdruckplatte_option_umschlag$V == 3 || $Vdruckplatte_option_umschlag$V == 2 || $Vdruckplatte_option_umschlag$V == 5 || $Vdruckplatte_option_umschlag$V == 4)? 1:0))">8</grenze>
<grenze calc_value="(7+(($Vdruckplatte_option_umschlag$V == 3 || $Vdruckplatte_option_umschlag$V == 2 || $Vdruckplatte_option_umschlag$V == 5 || $Vdruckplatte_option_umschlag$V == 4)? 1:0))">9</grenze>
</druckfarben_umschlag>
</option>
<option id="calc_anzahl_farben_plano_fa" name="calc_anzahl_farben_plano_fa" type="Hidden" default="1">
<druckfarben_inhalt>
<grenze calc_value="4">1</grenze>
<grenze calc_value="4">2</grenze>
<grenze calc_value="4">3</grenze>
<grenze calc_value="5">4</grenze>
<grenze calc_value="5">5</grenze>
<grenze calc_value="6">6</grenze>
<grenze calc_value="1">7</grenze>
<grenze calc_value="1">8</grenze>
<grenze calc_value="2">9</grenze>
<grenze calc_value="2">10</grenze>
<grenze calc_value="2">11</grenze>
<grenze calc_value="2">12</grenze>
<grenze calc_value="3">13</grenze>
<grenze calc_value="3">14</grenze>
<grenze calc_value="3">15</grenze>
<grenze calc_value="1">16</grenze>
<grenze calc_value="1">17</grenze>
<grenze calc_value="4">18</grenze>
<grenze calc_value="4">19</grenze>
<grenze calc_value="6">20</grenze>
<grenze calc_value="7">21</grenze>
<grenze calc_value="8">22</grenze>
<grenze calc_value="4">23</grenze>
</druckfarben_inhalt>
</option>
<option id="calc_bedruckte_seiten_plano_fa" name="calc_bedruckte_seiten_plano_fa" type="Hidden" default="1">
<druckfarben_inhalt>
<grenze calc_value="1">1</grenze>
<grenze calc_value="2">2</grenze>
<grenze calc_value="2">3</grenze>
<grenze calc_value="1">4</grenze>
<grenze calc_value="2">5</grenze>
<grenze calc_value="2">6</grenze>
<grenze calc_value="1">7</grenze>
<grenze calc_value="2">8</grenze>
<grenze calc_value="1">9</grenze>
<grenze calc_value="1">10</grenze>
<grenze calc_value="2">11</grenze>
<grenze calc_value="2">12</grenze>
<grenze calc_value="1">13</grenze>
<grenze calc_value="2">14</grenze>
<grenze calc_value="2">15</grenze>
<grenze calc_value="1">16</grenze>
<grenze calc_value="2">17</grenze>
<grenze calc_value="1">18</grenze>
<grenze calc_value="2">19</grenze>
<grenze calc_value="1">20</grenze>
<grenze calc_value="1">21</grenze>
<grenze calc_value="1">22</grenze>
<grenze calc_value="1">23</grenze>
</druckfarben_inhalt>
</option>
<option id="calc_anzahl_farbwechsel_plano_fa" name="calc_anzahl_farbwechsel_plano_fa" type="Hidden" default="1">
<auflage formel="$CVhilfsvalue_maschine_auflage$CV">
<grenze value="kba">
<druckfarben_inhalt>
<grenze calc_value="0">1</grenze>
<grenze calc_value="0">2</grenze>
<grenze calc_value="0">3</grenze>
<grenze calc_value="1">4</grenze>
<grenze calc_value="1">5</grenze>
<grenze calc_value="2">6</grenze>
<grenze calc_value="0">7</grenze>
<grenze calc_value="0">8</grenze>
<grenze calc_value="1">9</grenze>
<grenze calc_value="2">10</grenze>
<grenze calc_value="1">11</grenze>
<grenze calc_value="2">12</grenze>
<grenze calc_value="3">13</grenze>
<grenze calc_value="2">14</grenze>
<grenze calc_value="3">15</grenze>
<grenze calc_value="1">16</grenze>
<grenze calc_value="1">17</grenze>
<grenze calc_value="1">18</grenze>
<grenze calc_value="4">19</grenze>
<grenze calc_value="2">20</grenze>
<grenze calc_value="3">21</grenze>
<grenze calc_value="4">22</grenze>
<grenze calc_value="4">23</grenze>
</druckfarben_inhalt>
</grenze>
<grenze value="gto">
<druckfarben_inhalt>
<grenze calc_value="3">1</grenze>
<grenze calc_value="3">2</grenze>
<grenze calc_value="3">3</grenze>
<grenze calc_value="4">4</grenze>
<grenze calc_value="4">5</grenze>
<grenze calc_value="5">6</grenze>
<grenze calc_value="0">7</grenze>
<grenze calc_value="0">8</grenze>
<grenze calc_value="1">9</grenze>
<grenze calc_value="2">10</grenze>
<grenze calc_value="1">11</grenze>
<grenze calc_value="2">12</grenze>
<grenze calc_value="3">13</grenze>
<grenze calc_value="2">14</grenze>
<grenze calc_value="3">15</grenze>
<grenze calc_value="1">16</grenze>
<grenze calc_value="1">17</grenze>
<grenze calc_value="4">18</grenze>
<grenze calc_value="6">19</grenze>
<grenze calc_value="6">20</grenze>
<grenze calc_value="7">21</grenze>
<grenze calc_value="8">22</grenze>
<grenze calc_value="4">23</grenze>
</druckfarben_inhalt>
</grenze>
</auflage>
</option>
</root>

View File

@ -0,0 +1,733 @@
$hilfsvalue_abschlag_sammelform_plano = '((($CVhilfsvalue_sammelform_format_auflage$CV/100*75)+($CVhilfsvalue_sammelform_menge_auflage$CV/100*25))/(75+25)*100)';
$hilfsvalue_sammelform_format_plano = '(max(0,getSammelformFormatPlano($Vsortenzahl$V*$CVformat_offen_breite_auflage$CV*$CVformat_offen_hoehe_auflage$CV)-(5*abs(1.408-max($CVformat_offen_breite_auflage$CV,$CVformat_offen_hoehe_auflage$CV)/min($CVformat_offen_breite_auflage$CV,$CVformat_offen_hoehe_auflage$CV)))))';
if(!function_exists('getSammelformMengenAbschlagPlano')) {
function getSammelformMengenAbschlagPlano($menge) {
if($menge < 2500) return 100;
if($menge < 7500) return 90;
if($menge < 10000) return 80;
if($menge < 15000) return 70;
if($menge < 20000) return 60;
if($menge < 35000) return 50;
if($menge < 50000) return 25;
return 1;
}
function getSammelformFormatPlano($value) {
if($value < 56) return 150;
if($value < 63) return 130;
if($value < 649) return 100;
if($value < 1299) return 90;
if($value < 1999) return 80;
if($value < 2499) return 60;
return 0;
}
function getCalcTableValue($what, $papierType1,$papierType2,$papierType3,$papierType4,$papierType5,$papierType6,$papierType7,$papierType8,$papierType9,$papierType10,$papierType11,$papierType12,$papierType13,$papierType14, $kostenDruckplatte, $druckplatteOption, $gammatur, $papierKosten, $weiterVerarbeitung, $seiten, $auflage, $anzahlDruckfarben, $anzahlFarbwechsel, $anzahlDruckJeForm, $format_offen_breite, $format_offen_hoehe, $geiferRand, $bogenRaender) {
$price = 9999999999;
$nutzen = 9999999999;
$nettobg = 9999999999;
$zuschuss = 9999999999;
$bogen_hoehe = 1000;
$bogen_breite = 1000;
$ctp = 999999999;
$formate=array();
if($papierType1) {
$formate[] = array('type' => 1, 'breite' => 88, 'hoehe' => 63, 'seiten' => 4);
}
if($papierType1 && ($weiterVerarbeitung == 3)) {
$formate[] = array('type' => 2, 'breite' => 88, 'hoehe' => 63, 'seiten' => 2);
}
if($papierType2) {
$formate[] = array('type' => 5, 'breite' => 100, 'hoehe' => 70, 'seiten' => 4);
}
if($papierType2 && ($weiterVerarbeitung == 3)) {
$formate[] = array('type' => 5, 'breite' => 100, 'hoehe' => 70, 'seiten' => 2);
}
if($papierType3) {
//$formate[] = array('type' => 3, 'breite' => 70, 'hoehe' => 50, 'seiten' => 4);
}
if($papierType3 && ($weiterVerarbeitung == 3)) {
//$formate[] = array('type' => 3, 'breite' => 70, 'hoehe' => 50, 'seiten' => 2);
}
if($papierType4) {
//$formate[] = array('type' => 7, 'breite' => 61, 'hoehe' => 43, 'seiten' => 4);
}
if($papierType4 && ($weiterVerarbeitung == 3)) {
//$formate[] = array('type' => 7, 'breite' => 61, 'hoehe' => 43, 'seiten' => 2);
}
if($papierType5) {
//$formate[] = array('type' => 7, 'breite' => 22.9, 'hoehe' => 11.4, 'seiten' => 4);
}
if($papierType5 && ($weiterVerarbeitung == 3)) {
//$formate[] = array('type' => 7, 'breite' => 22.9, 'hoehe' => 11.4, 'seiten' => 2);
}
if($papierType6) {
//$formate[] = array('type' => 7, 'breite' => 32.4, 'hoehe' => 22.9, 'seiten' => 4);
}
if($papierType6 && ($weiterVerarbeitung == 3)) {
//$formate[] = array('type' => 7, 'breite' => 32.4, 'hoehe' => 22.9, 'seiten' => 2);
}
if($papierType7) {
//$formate[] = array('type' => 7, 'breite' => 35.3, 'hoehe' => 25, 'seiten' => 4);
}
if($papierType7 && ($weiterVerarbeitung == 3)) {
//$formate[] = array('type' => 7, 'breite' => 35.3, 'hoehe' => 25, 'seiten' => 2);
}
if($papierType8) {
//$formate[] = array('type' => 7, 'breite' => 22.9, 'hoehe' => 16.2, 'seiten' => 4);
}
if($papierType8 && ($weiterVerarbeitung == 3)) {
//$formate[] = array('type' => 7, 'breite' => 22.9, 'hoehe' => 16.2, 'seiten' => 2);
}
if($papierType9) {
//$formate[] = array('type' => 7, 'breite' => 22, 'hoehe' => 11, 'seiten' => 4);
}
if($papierType9 && ($weiterVerarbeitung == 3)) {
//$formate[] = array('type' => 7, 'breite' => 22, 'hoehe' => 11, 'seiten' => 2);
}
if($papierType10) {
//$formate[] = array('type' => 7, 'breite' => 22, 'hoehe' => 22, 'seiten' => 4);
}
if($papierType10 && ($weiterVerarbeitung == 3)) {
//$formate[] = array('type' => 7, 'breite' => 22, 'hoehe' => 22, 'seiten' => 2);
}
if($papierType11) {
$formate[] = array('type' => 7, 'breite' => 92, 'hoehe' => 65, 'seiten' => 4);
}
if($papierType11 && ($weiterVerarbeitung == 3)) {
$formate[] = array('type' => 7, 'breite' => 92, 'hoehe' => 65, 'seiten' => 2);
}
if($papierType12) {
//$formate[] = array('type' => 7, 'breite' => 64, 'hoehe' => 45, 'seiten' => 4);
}
if($papierType12 && ($weiterVerarbeitung == 3)) {
//$formate[] = array('type' => 7, 'breite' => 64, 'hoehe' => 45, 'seiten' => 2);
}
if($papierType13) {
//$formate[] = array('type' => 7, 'breite' => 44, 'hoehe' => 31.5, 'seiten' => 4);
}
if($papierType13 && ($weiterVerarbeitung == 3)) {
//$formate[] = array('type' => 7, 'breite' => 44, 'hoehe' => 31.5, 'seiten' => 2);
}
if($papierType14) {
$formate[] = array('type' => 7, 'breite' => 102, 'hoehe' => 72, 'seiten' => 4);
}
if($papierType14 && ($weiterVerarbeitung == 3)) {
$formate[] = array('type' => 7, 'breite' => 102, 'hoehe' => 72, 'seiten' => 2);
}
//echo "<br/><br/>";
foreach($formate as $key => $format) {
if($format['seiten'] == 4) {
$calc1=floor((($format['breite']-$bogenRaender)/($format_offen_breite)))*floor((($format['hoehe']-$geiferRand))/$format_offen_hoehe)*2;
$calc2=floor((($format['hoehe']-$bogenRaender)/($format_offen_breite)))*floor((($format['breite']-$geiferRand))/$format_offen_hoehe)*2;
}else{
$calc1=floor((($format['breite']-$bogenRaender)/($format_offen_breite/2)))*floor((($format['hoehe']-$geiferRand))/$format_offen_hoehe);
$calc2=floor((($format['hoehe']-$bogenRaender)/($format_offen_breite/2)))*floor((($format['breite']-$geiferRand))/$format_offen_hoehe);
}
$nutzen_calc = ($calc1 > $calc2)? $calc1: $calc2;
$calc1 = 200;
$calc2 = ($anzahlDruckJeForm*$anzahlDruckfarben*100*ceil($seiten/($nutzen_calc*2))+($anzahlFarbwechsel*100)+($seiten/($nutzen_calc*2)*$auflage*0.02));
$zuschussCalc = ($calc1 > $calc2)? $calc1 : $calc2;
$nettoBedruckGesamt = $seiten/$nutzen_calc*$auflage/2;
$ctp1 = ceil($seiten/$nutzen_calc)*($anzahlDruckfarben)+$druckplatteOption;
$price_calc = ((($nettoBedruckGesamt+$zuschussCalc)*$format['hoehe']*$format['breite']*$gammatur*$papierKosten/1000000000))+($kostenDruckplatte*$ctp1);
//var_dump($nutzen_calc);
//var_dump($format['hoehe'].'-'.$format['breite'].'-'.$ctp1.'-'.$nettoBedruckGesamt.'-'.$price_calc.'-'.$price);
//echo "<br/>";
if($price_calc < $price && $nutzen > 0) {
$price = $price_calc;
$nutzen = $nutzen_calc;
$ctp = $ctp1;
$zuschuss = $zuschussCalc;
$nettobg = $nettoBedruckGesamt;
$bogen_hoehe = $format['hoehe'];
$bogen_breite = $format['breite'];
}
}
if($what == 'nutzen') {
if($seiten < $nutzen) {
return $seiten;
}
return $nutzen;
}
if($what == 'nettobg') {
return $nettobg;
}
if($what == 'zuschuss') {
return $zuschuss;
}
if($what == 'bogen_hoehe') {
return $bogen_hoehe;
}
if($what == 'ctp') {
return $ctp;
}
if($what == 'bogen_breite') {
return $bogen_breite;
}
return $price;
}
function getCalcTableValueUmschlag($what, $papierType1,$papierType2,$papierType3,$papierType4,$papierType5,$papierType6,$papierType7,$papierType8,$papierType9,$papierType10,$papierType11,$papierType12,$papierType13,$papierType14, $kostenDruckplatte, $druckplatteOption, $gammatur, $papierKosten, $umschlagen, $seiten, $auflage, $anzahlDruckfarben, $anzahlFarbwechsel, $anzahlDruckJeForm, $format_offen_breite, $format_offen_hoehe, $geiferRand, $bogenRaender, $umschlag_seiten_bedruckt) {
$price = 9999999999;
$nutzen = 9999999999;
$nettobg = 9999999999;
$zuschuss = 9999999999;
$bogen_hoehe = 1000;
$bogen_breite = 1000;
$formate=array();
if($papierType1) {
$formate[] = array('type' => 1, 'breite' => 88, 'hoehe' => 63, 'umschlagen' => 0);
}
if($papierType1 && $umschlagen == 1) {
$formate[] = array('type' => 2, 'breite' => 88, 'hoehe' => 63, 'umschlagen' => 1);
}
if($papierType2) {
$formate[] = array('type' => 5, 'breite' => 100, 'hoehe' => 70, 'umschlagen' => 0);
}
if($papierType2 && $umschlagen == 1) {
$formate[] = array('type' => 5, 'breite' => 100, 'hoehe' => 70, 'umschlagen' => 1);
}
if($papierType3) {
$formate[] = array('type' => 3, 'breite' => 70, 'hoehe' => 50, 'umschlagen' => 0);
}
if($papierType3 && $umschlagen == 1) {
$formate[] = array('type' => 3, 'breite' => 70, 'hoehe' => 50, 'umschlagen' => 1);
}
if($papierType4) {
//$formate[] = array('type' => 7, 'breite' => 61, 'hoehe' => 43, 'umschlagen' => 0);
}
if($papierType4 && $umschlagen == 1) {
//$formate[] = array('type' => 7, 'breite' => 61, 'hoehe' => 43, 'umschlagen' => 1);
}
if($papierType5) {
//$formate[] = array('type' => 7, 'breite' => 22.9, 'hoehe' => 11.4, 'umschlagen' => 0);
}
if($papierType5 && $umschlagen == 1) {
//$formate[] = array('type' => 7, 'breite' => 22.9, 'hoehe' => 11.4, 'umschlagen' => 1);
}
if($papierType6) {
//$formate[] = array('type' => 7, 'breite' => 32.4, 'hoehe' => 22.9, 'umschlagen' => 0);
}
if($papierType6 && $umschlagen == 1) {
//$formate[] = array('type' => 7, 'breite' => 32.4, 'hoehe' => 22.9, 'umschlagen' => 1);
}
if($papierType7) {
//$formate[] = array('type' => 7, 'breite' => 35.3, 'hoehe' => 25, 'umschlagen' => 0);
}
if($papierType7 && $umschlagen == 1) {
//$formate[] = array('type' => 7, 'breite' => 35.3, 'hoehe' => 25, 'umschlagen' => 1);
}
if($papierType8) {
//$formate[] = array('type' => 7, 'breite' => 22.9, 'hoehe' => 16.2, 'umschlagen' => 0);
}
if($papierType8 && $umschlagen == 1) {
//$formate[] = array('type' => 7, 'breite' => 22.9, 'hoehe' => 16.2, 'umschlagen' => 1);
}
if($papierType9) {
//$formate[] = array('type' => 7, 'breite' => 22, 'hoehe' => 11, 'umschlagen' => 0);
}
if($papierType9 && $umschlagen == 1) {
//$formate[] = array('type' => 7, 'breite' => 22, 'hoehe' => 11, 'umschlagen' => 1);
}
if($papierType10) {
//$formate[] = array('type' => 7, 'breite' => 22, 'hoehe' => 22, 'umschlagen' => 0);
}
if($papierType10 && $umschlagen == 1) {
//$formate[] = array('type' => 7, 'breite' => 22, 'hoehe' => 22, 'umschlagen' => 1);
}
if($papierType11) {
//$formate[] = array('type' => 7, 'breite' => 92, 'hoehe' => 65, 'umschlagen' => 0);
}
if($papierType11 && $umschlagen == 1) {
//$formate[] = array('type' => 7, 'breite' => 92, 'hoehe' => 65, 'umschlagen' => 1);
}
if($papierType12) {
//$formate[] = array('type' => 7, 'breite' => 64, 'hoehe' => 45, 'umschlagen' => 0);
}
if($papierType12 && $umschlagen == 1) {
//$formate[] = array('type' => 7, 'breite' => 64, 'hoehe' => 45, 'umschlagen' => 1);
}
if($papierType13) {
//$formate[] = array('type' => 7, 'breite' => 44, 'hoehe' => 31.5, 'umschlagen' => 0);
}
if($papierType13 && ($weiterVerarbeitung == 2 || $weiterVerarbeitung == 3)) {
//$formate[] = array('type' => 7, 'breite' => 44, 'hoehe' => 31.5, 'umschlagen' => 1);
}
if($papierType14) {
$formate[] = array('type' => 7, 'breite' => 102, 'hoehe' => 72, 'umschlagen' => 0);
}
if($papierType14 && $umschlagen == 1) {
$formate[] = array('type' => 7, 'breite' => 102, 'hoehe' => 72, 'umschlagen' => 1);
}
//echo "<br/><br/>";
foreach($formate as $key => $format) {
if($format['umschlagen'] == 0) {
$calc1=floor((($format['breite']-$bogenRaender)/($format_offen_breite)))*floor((($format['hoehe']-$geiferRand))/$format_offen_hoehe);
$calc2=floor((($format['hoehe']-$bogenRaender)/($format_offen_breite)))*floor((($format['breite']-$geiferRand))/$format_offen_hoehe);
$ctp1 = $umschlag_seiten_bedruckt*$anzahlDruckfarben+$druckplatteOption;
}else{
$calc1=floor((($format['breite']-$bogenRaender)/($format_offen_breite)))*floor((($format['hoehe']-$geiferRand))/$format_offen_hoehe);
$calc2=floor((($format['hoehe']-$bogenRaender)/($format_offen_breite)))*floor((($format['breite']-$geiferRand))/$format_offen_hoehe);
$ctp1 = $anzahlDruckfarben+$druckplatteOption;
}
$nutzen_calc = ($calc1 > $calc2)? $calc1: $calc2;
if($format['umschlagen'] == 1) {
$nutzen_calc = floor($nutzen_calc/2)*2;
}
if($nutzen_calc == 0) {
continue;
}
$calc1 = 150;
$calc2 = ($anzahlDruckJeForm*$anzahlDruckfarben*100)+($auflage/$nutzen_calc*0.02);
$zuschussCalc = ($calc1 > $calc2)? $calc1 : $calc2;
//var_dump($nutzen_calc);
$nettoBedruckGesamt = $auflage/$nutzen_calc;
$gramGesch = (100-sqrt((150-$gammatur)*(150-$gammatur))/5)/100;
$fortdruckGeschwindigkeit = 2500+$gramGesch*(log10($auflage*$auflage)*700);
$kba1 = 140*($zuschussCalc+$nettoBedruckGesamt)/$fortdruckGeschwindigkeit*$umschlag_seiten_bedruckt*(ceil($anzahlDruckfarben/5));
//var_dump($zuschussCalc.' - '.$nettoBedruckGesamt.' - '.$fortdruckGeschwindigkeit.' - '.$umschlag_seiten_bedruckt.' - '.$anzahlDruckfarben);
$price_calc = ($format['hoehe']*$format['breite']*($nettoBedruckGesamt+$zuschussCalc)*$gammatur*$papierKosten/1000000000)+($kostenDruckplatte*$ctp1)+$kba1;
//var_dump($format['hoehe'].' - '.$format['breite'].' - '.$ctp1.' - '.$kba1.' - '.$price_calc.' - '.$price);
//echo "<br/>";
if($price_calc < $price) {
$price = $price_calc;
$nutzen = $nutzen_calc;
$zuschuss = $zuschussCalc;
$nettobg = $nettoBedruckGesamt;
$bogen_hoehe = $format['hoehe'];
$bogen_breite = $format['breite'];
}
}
if($what == 'nutzen') {
return $nutzen;
}
if($what == 'nettobg') {
return $nettobg;
}
if($what == 'zuschuss') {
return $zuschuss;
}
if($what == 'bogen_hoehe') {
return $bogen_hoehe;
}
if($what == 'bogen_breite') {
return $bogen_breite;
}
return $price;
}
function getPurHelpKlebe($what, $var) {
$fix = 222;
$per = 89;
if($var > 7) {
$fix = 233;
$per = 102;
}
if($var > 12) {
$fix = 244;
$per = 114;
}
if($var > 16) {
$fix = 366;
$per = 228;
}
if($what=='fix') {
return $fix;
}
return $per;
}
function getPurHelpFalz($what, $var) {
$fix = 10.30;
$per = 7.05;
if($var == 6) {
$fix = 15.40;
$per = 8.20;
}
if($var == 8) {
$fix = 15.40;
$per = 8.40;
}
if($var == 12) {
$fix = 20.50;
$per = 9.70;
}
if($var == 16) {
$fix = 31.50;
$per = 9.50;
}
if($var == 24) {
$fix = 41.00;
$per = 10.70;
}
if($var == 32) {
$fix = 51.20;
$per = 11.90;
}
if($var == 48) {
$fix = 102.30;
$per = 12.90;
}
if($what=='fix') {
return $fix;
}
return $per;
}
function getCalcTableValueOffsetPlano($what, $papierType1,$papierType2,$papierType3,$papierType4,$papierType5,$papierType6,$papierType7,$papierType8,$papierType9,$papierType10,$papierType11,$papierType12,$papierType13,$papierType14, $kostenDruckplatte, $druckplatteOption, $gammatur, $papierKosten, $umschlagen, $seiten, $auflage, $anzahlDruckfarben, $anzahlFarbwechsel, $anzahlSeiten, $format_offen_breite, $format_offen_hoehe, $drucklack, $papier_vs_rs_unterschiedlich) {
//var_dump( func_get_args());
$price = 9999999999;
$nutzen = 9999999999;
$nettobg = 9999999999;
$zuschuss = 9999999999;
$bogen_hoehe = 1000;
$bogen_breite = 1000;
$ctp = 999999999;
$druckgaenge = 99999999;
$fortdruckmaschine = 0;
$stundensatz = 99999999;
$maschine = 'kba';
$formate=array();
if($papierType1) {
$formate[] = array('type' => 1, 'breite' => 88, 'hoehe' => 63, 'umschlagen' => 0);
}
if($papierType1 && $umschlagen == 1) {
$formate[] = array('type' => 2, 'breite' => 88, 'hoehe' => 63, 'umschlagen' => 1);
}
if($papierType2) {
$formate[] = array('type' => 5, 'breite' => 100, 'hoehe' => 70, 'umschlagen' => 0);
}
if($papierType2 && $umschlagen == 1) {
$formate[] = array('type' => 5, 'breite' => 100, 'hoehe' => 70, 'umschlagen' => 1);
}
if($papierType3) {
$formate[] = array('type' => 3, 'breite' => 70, 'hoehe' => 50, 'umschlagen' => 0);
}
if($papierType3 && $umschlagen == 1) {
$formate[] = array('type' => 3, 'breite' => 70, 'hoehe' => 50, 'umschlagen' => 1);
}
if($papierType4) {
$formate[] = array('type' => 7, 'breite' => 61, 'hoehe' => 43, 'umschlagen' => 0);
}
if($papierType4 && $umschlagen == 1) {
$formate[] = array('type' => 7, 'breite' => 61, 'hoehe' => 43, 'umschlagen' => 1);
}
if($papierType5) {
$formate[] = array('type' => 7, 'breite' => 22.9, 'hoehe' => 11.4, 'umschlagen' => 0);
}
if($papierType5 && $umschlagen == 1) {
$formate[] = array('type' => 7, 'breite' => 22.9, 'hoehe' => 11.4, 'umschlagen' => 1);
}
if($papierType6) {
$formate[] = array('type' => 7, 'breite' => 32.4, 'hoehe' => 22.9, 'umschlagen' => 0);
}
if($papierType6 && $umschlagen == 1) {
$formate[] = array('type' => 7, 'breite' => 32.4, 'hoehe' => 22.9, 'umschlagen' => 1);
}
if($papierType7) {
$formate[] = array('type' => 7, 'breite' => 35.3, 'hoehe' => 25, 'umschlagen' => 0);
}
if($papierType7 && $umschlagen == 1) {
$formate[] = array('type' => 7, 'breite' => 35.3, 'hoehe' => 25, 'umschlagen' => 1);
}
if($papierType8) {
$formate[] = array('type' => 7, 'breite' => 22.9, 'hoehe' => 16.2, 'umschlagen' => 0);
}
if($papierType8 && $umschlagen == 1) {
$formate[] = array('type' => 7, 'breite' => 22.9, 'hoehe' => 16.2, 'umschlagen' => 1);
}
if($papierType9) {
$formate[] = array('type' => 7, 'breite' => 22, 'hoehe' => 11, 'umschlagen' => 0);
}
if($papierType9 && $umschlagen == 1) {
$formate[] = array('type' => 7, 'breite' => 22, 'hoehe' => 11, 'umschlagen' => 1);
}
if($papierType10) {
$formate[] = array('type' => 7, 'breite' => 22, 'hoehe' => 22, 'umschlagen' => 0);
}
if($papierType10 && $umschlagen == 1) {
$formate[] = array('type' => 7, 'breite' => 22, 'hoehe' => 22, 'umschlagen' => 1);
}
if($papierType11) {
$formate[] = array('type' => 7, 'breite' => 92, 'hoehe' => 65, 'umschlagen' => 0);
}
if($papierType11 && $umschlagen == 1) {
$formate[] = array('type' => 7, 'breite' => 92, 'hoehe' => 65, 'umschlagen' => 1);
}
if($papierType12) {
$formate[] = array('type' => 7, 'breite' => 64, 'hoehe' => 45, 'umschlagen' => 0);
}
if($papierType12 && $umschlagen == 1) {
$formate[] = array('type' => 7, 'breite' => 64, 'hoehe' => 45, 'umschlagen' => 1);
}
if($papierType13) {
$formate[] = array('type' => 7, 'breite' => 44, 'hoehe' => 31.5, 'umschlagen' => 0);
}
if($papierType13 && $umschlagen == 1) {
$formate[] = array('type' => 7, 'breite' => 44, 'hoehe' => 31.5, 'umschlagen' => 1);
}
if($papierType14) {
$formate[] = array('type' => 7, 'breite' => 102, 'hoehe' => 72, 'umschlagen' => 0);
}
if($papierType14 && $umschlagen == 1) {
$formate[] = array('type' => 7, 'breite' => 102, 'hoehe' => 72, 'umschlagen' => 1);
}
//echo "<br/><br/>";
foreach($formate as $key => $format) {
$geiferRand = getGeiferRand($format);
$bogenRaender = getBogenRaender($format);
if($format['umschlagen'] == 0) {
$nutzen_calc = max(
((floor(($format['breite']-$bogenRaender)/$format_offen_breite))*(floor(($format['hoehe']-$geiferRand)/$format_offen_hoehe))),
((floor(($format['breite']-$bogenRaender)/$format_offen_hoehe)*(floor(($format['hoehe']-$geiferRand)/$format_offen_breite))))
);
}else{
$nutzen_calc= 2*floor((max(
((floor(($format['breite']-$bogenRaender)/$format_offen_breite))*(floor(($format['hoehe']-$geiferRand)/$format_offen_hoehe))),
((floor(($format['breite']-$bogenRaender)/$format_offen_hoehe)*(floor(($format['hoehe']-$geiferRand)/$format_offen_breite))))
))/2);
}
if($anzahlSeiten==2 && $papier_vs_rs_unterschiedlich==0 && $nutzen_calc > 1 && $format['umschlagen'] == 1) {
$ctp1 = ($anzahlDruckfarben+$drucklack)*$anzahlSeiten/2;
}else{
$ctp1 = ($anzahlDruckfarben+$drucklack)*$anzahlSeiten;
}
$maschine1 = getMaschine($format['breite'], $format['hoehe']);
if(getMaschine($format['breite'], $format['hoehe']) == "gto") {
$druckgaenge1 = $anzahlSeiten*($anzahlDruckfarben+$drucklack);
$fortdruckmaschine1 = 0;
$stundensatz1 = 40;
$anzahlFarb1 = max($anzahlFarbwechsel, $anzahlDruckfarben-1);
}else{
$druckgaenge1 = ceil(($anzahlDruckfarben+$drucklack)/5)*$anzahlSeiten;
$fortdruckmaschine1 = 4500;
$stundensatz1 = 140;
$anzahlFarb1 = $anzahlFarbwechsel;
}
$zuschussCalc = intval(max(200,floor(($anzahlDruckfarben*100)+($auflage/$nutzen_calc*0.02))));
$fortdruckGeschwindigkeit = (log10($auflage*$auflage)*900)*(100-sqrt((150-$gammatur)*(150-$gammatur))/5)/100;
$nettoBedruckGesamt = (round($auflage/$nutzen_calc,0));
$druckkosten = $stundensatz1*((($zuschussCalc+$nettoBedruckGesamt)/$fortdruckGeschwindigkeit*$druckgaenge1)+($ctp1*7/60)+($anzahlFarb1*45/60));
//var_dump($maschine1.'-'.$stundensatz1.'-'.$zuschussCalc.'-'.$nettoBedruckGesamt.'-'.$fortdruckGeschwindigkeit.'-'.$druckgaenge1.'-'.$ctp1.'-'.$anzahlFarb1);
//echo "<br/>";
$price_calc = (($nettoBedruckGesamt+$zuschussCalc)*($format['hoehe']*$format['breite']*$gammatur*$papierKosten/1000000000)+($kostenDruckplatte*$ctp1))+$druckkosten;
if($price_calc < $price && $nettoBedruckGesamt != 0) {
$price = $price_calc;
$nutzen = $nutzen_calc;
$ctp = $ctp1;
$zuschuss = $zuschussCalc;
$nettobg = $nettoBedruckGesamt;
$bogen_hoehe = $format['hoehe'];
$bogen_breite = $format['breite'];
$druckgaenge = $druckgaenge1;
$fortdruckmaschine = $fortdruckmaschine1;
$stundensatz = $stundensatz1;
$maschine = $maschine1;
}
//var_dump($format['hoehe'].'-'.$format['breite'].'-'.$ctp1.'-'.($zuschussCalc+$nettoBedruckGesamt).'-'.$druckkosten.'-'.$price_calc.'-'.$price);
//echo "<br/>";
}
if($what == 'nutzen') {
return $nutzen;
}
if($what == 'nettobg') {
return $nettobg;
}
if($what == 'maschine') {
return $maschine;
}
if($what == 'zuschuss') {
return $zuschuss;
}
if($what == 'fortdruckmaschine') {
return $fortdruckmaschine;
}
if($what == 'maschine_stundensatz') {
return $stundensatz;
}
if($what == 'bogen_hoehe') {
return $bogen_hoehe;
}
if($what == 'ctp') {
return $ctp;
}
if($what == 'druckgaenge') {
return $druckgaenge;
}
if($what == 'bogen_breite') {
return $bogen_breite;
}
return $price;
}
function getMaschine($breite, $hoehe) {
if($breite > 49 || $hoehe > 49) {
return 'kba';
}
return 'gto';
}
function getGeiferRand($format) {
$maschine = getMaschine($format['breite'], $format['hoehe']);
if($maschine == 'kba') {
return 2.3;
}
return 1.4;
}
function getBogenRaender($format) {
$maschine = getMaschine($format['breite'], $format['hoehe']);
if($maschine == 'kba') {
return 1.5;
}
return 0.8;
}
function getMaschineKosten($format) {
$maschine = getMaschine($format['breite'], $format['hoehe']);
if($maschine == 'kba') {
return 140;
}
return 40;
}
}

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<container>
<papiercontainer id="banderolen">
<papier id="sm150g"/>
</papiercontainer>
</container>

View File

@ -0,0 +1,210 @@
$onlinerabatt_flaschenanhaenger_p = 0;
$onlinerabatt_flaschenanhaenger_f = 10;
$onlinerabatt_digitalplot_p = 0;
$onlinerabatt_digitalplot_f = 5;
$onlinerabatt_ausdruck_p = 0;
$onlinerabatt_ausdruck_f = 10;
$onlinerabatt_digitalproof_p = 0;
$onlinerabatt_digitalproof_f = 0;
$medienkeil_aufpreis_f = 8;
$onlinerabatt_farbscan_p = 0;
$onlinerabatt_farbscan_f = 5;
$onlinerabatt_strichscan_p = 0;
$onlinerabatt_strichscan_f = 5;
$hour_druckvorstufe = 60;
$geiferRand = 2.3;
$bogenRaender = 1.5;
$onlinerabatt_broschuere_p = 0;
$onlinerabatt_broschuere_f = 30;
$aktionsrabatt_broschuere_p = 12;
$aktionsrabatt_broschuere_f = 0;
$onlinerabatt_plano_p = 0;
$onlinerabatt_plano_f = 10;
$onlinerabatt_privatdrucksachen_p = 0;
$onlinerabatt_privatdrucksachen_f = 5;
$aktionsrabatt_plano_p = 12;
$aktionsrabatt_plano_p_vk = 6;
$aktionsrabatt_plano_f = 0;
$aktionsrabatt_plano_f_vk = 0;
$papierzuschlag_broschuere = 1.3;
$papierzuschlag_plano = 1.3;
$onlinerabatt_20 = -20;
$onlinerabatt_10 = -10;
$onlinerabatt_etikett = -10;
$kostenProDruckplatte = 15;
$stundenSatzDruck = 140;
$stundenSatzDruckGTO = 40;
$ruestZeitJeDruckplatte = 5;
$ruestZeitJeDruckplatteGTO = 15;
$kostenProZusatzdruckplatteGTO = 35;
$farbwechselZeit = 45;
$farbwechselZeitGTO = 20;
$stundensatz_wtv_maschinen = 50;
$stundensatz_wtv = 30;
$stundensatz_vorstufe = 60;
$stundensatz_vorstufe_daten_huellen = 60;
$vorstufe_fixkosten = 20;
$papieraufschlag_huellen = 1.3;
$durckfarbe_preis_je_bogen = 1;
$aufpreis_drucklack_matt_voll = 10;
$aufpreis_drucklack_matt_partiell = 30;
$aufpreis_drucklack_glzd_voll = 55;
$aufpreis_drucklack_glzd_partiell = 95;
$buchrueckenstaerke = 0.36;
// WTV
$ringoesen = 60;
$oesen_stkpreis = 0.20;
$oesen_fixpreis = 45;
$beilage_einlegen_bestimmte = 45;
$beilage_einlegen_unbestimmte = 35;
$buendeln = 0.15;
$perforation = 25;
$laserstanzung = 0.50;
$folieeinschweissen = 0.13;
$ruestkosten_perforation = 35;
$ruestkosten_lochung = 15;
$ruestkosten_umlaufender_karton = 35;
$fixkosten_nummerierung = 15;
$fixkosten_blockleimung = 25;
$fixkosten_umlaufender_karton = 0.6;
$umschlag_kaschierung_mk = 0.8;
$umschlag_kaschierung_gl = 0.6;
$faktor_klein_gross_falzung = 3;
$aufpreis_falzen_altarfalz = 50;
$falzbruch_ruesten = 10;
$plano_fa_aufpreis_anderes_dateiformat = 25;
$plano_fa_fixpreis_buendeln = 15;
$plano_fa_preis_je_buendel = 0.15;
$plano_fa_fixpreis_perforation = 35;
$plano_fa_tsdpreis_perforation = 35;
$plano_fa_tsdpreis_ecken_runden = 16;
$plano_fa_tsdpreis_ecken_runden_nassleimetik = 1.50;
$plano_fa_fixpreis_ecken_runden = 15;
$plano_fa_fixpreis_bohren = 25;
$plano_fa_tsdpreis_bohren = 5;
$plano_fa_stckpreis_laserstanzung = 0.50;
$plano_fa_fixpreis_laserstanzung = 150;
$plano_fa_fixpreis_cito = 260;
$plano_fa_tsdpreis_cito = 35;
$plano_fa_fixpreis_cito_nassleimetik = 80;
$plano_fa_tsdpreis_cito_nassleimetik = 2;
// Sammelform
$sammelform_brosch_inhalt_happy = -60;
$sammelform_brosch_inhalt_eq = -45;
$sammelform_brosch_inhalt_sense = -45;
$sammelform_brosch_inhalt_sky = -30;
$sammelform_brosch_inhalt_glam = -60;
$sammelform_brosch_inhalt_post = 0;
$sammelform_brosch_umschlag_happy = -60;
$sammelform_brosch_umschlag_eq = -40;
$sammelform_brosch_umschlag_sense = -20;
$sammelform_brosch_umschlag_sky = -10;
$sammelform_brosch_umschlag_glam = -40;
$sammelform_brosch_umschlag_post = 0;
$sammelform_plano_fa_happy = -180;
$sammelform_plano_fa_eq = -160;
$sammelform_plano_fa_sense = -130;
$sammelform_plano_fa_sky = -125;
$sammelform_plano_fa_glam = -60;
$sammelform_plano_fa_post = -90;
$sammelform_plano_fa_happy_rapetik = - 280;
$sammelform_plano_fa_happy_aufkleber = - 280;
$sammelform_plano_fa_eq_aufkleber = - 250;
$sammelform_plano_fa_stdformatabschlag = 30;
// Banderolen Verschluss
$klebepunkte_lose_fix = 15;
$klebepunkte_lose_pro_tausend = 12;
$klebepunkte_vorkonf_fix = 15;
$klebepunkte_vorkonf_pro_tausend = 47;
$haftstreifen_lose_fix = 15;
$haftstreifen_lose_pro_tausend = 15;
$haftstreifen_vorkonf_fix = 45;
$haftstreifen_vorkonf_pro_tausend = 85;
// Digitaldruck
$standard_bogenbreite = 45;
$standard_bogenhoehe = 32;
$stundensatz_vorstufe_digitaldruck = 90;
$stundensatz_nuten_digitaldruck = 15;
$stundensatz_klebebinder = 200;
$papierzuschlag_digitaldruck = 1.3;
$klick_digitaldruck_a4fbg = 0.17;
$klick_digitaldruck_a4sw = 0.07;
$plano_fa_maxabschlag_proz_ek = 90;
$plano_fa_maxabschlag_abs = 7;
$plano_stanzen_fix1 = 35;
$plano_stanzen_fix1_vkru7 = 15;
$plano_stanzen_fix2 = 85;
$plano_stanzen_fix3_mappen = 260;
$plano_stanzen_var1 = 13;
$plano_stanzen_var2 = 33;
$plano_stanzen_var3_mappen = 40;
$plano_praegen_fix1 = 60;
$plano_praegen_fix2 = 110;
$plano_praegen_var1 = 25;
$plano_praegen_var2 = 45;
$plano_digitalproof_minimal = 15;
$plano_express_f = 45;
$plano_express_p = 13;
$plano_relax_f = 0;
$plano_relax_p = 15;
$plano_max_highend_f = 0;
$plano_max_highend_p = 10;
$plano_easy_value_f = 0;
$plano_easy_value_p = 10;
$rdh_aufschlag_sonderformate = 1.7;
$bro_aufschlag_pur = 1.22;
$bro_aufschlag_wire_o = 1.40;
$bro_aufschlag_hdcover = 1.20;
$bro_weight_faktor = 1.05;
$brosch_express_f = 45;
$brosch_express_p = 13;
$brosch_relax_f = 0;
$brosch_relax_p = 8;
$brosch_max_highend_f = 60;
$brosch_max_highend_p = 10;
$brosch_easy_value_f = 0;
$brosch_easy_value_p = 10;

View File

@ -249,6 +249,20 @@ class PaperRepostory implements ObjectRepository
$papier['10090']->setDescription1('90 g/m² Naturpapier (Oberfläche wie Kopierpapier, hochweiß, FSC-zert.)');
$papier['10090']->setDescription2('090 Prep');
$papier['sm150g'] = new Paper();
$papier['sm150g']->setArtNr('sm150g');
$papier['sm150g']->setGrammatur('150');
$papier['sm150g']->setPreis('100');
$papier['sm150g']->setDescription1('Bilderdruck seidenmatt 150g *');
$papier['sm150g']->setDescription2('Bilderdruck seidenmatt, aus zert. nachhaltiger Forstwirtschaft');
$papier['sm150g']->setUmschlagen(1);
$papier['sm150g']->setHappy(1);
$papier['sm150g']->setPapierTyp1(1);
$papier['sm150g']->setPapierTyp2(1);
$papier['sm150g']->setPapierTyp3(1);
$papier['sm150g']->setPapierTyp11(1);
$papier['sm150g']->setPapierTyp14(1);
return $papier[$criteria['artNr']];
}