Exemplo n.º 1
0
 public static function calculateSplasherYear()
 {
     //erst einmal holen wir uns alle Werte...
     $sql = "SELECT idta_variante, spl_jahr, idtm_stammdaten, idta_feldfunktion,to_idtm_stammdaten, SUM(spl_faktor) AS spl_faktor FROM `tt_splasher` GROUP BY idta_variante, spl_jahr, idtm_stammdaten, idta_feldfunktion,to_idtm_stammdaten WHERE spl_monat < 9999";
     $SplasherYearRecords = TTSplasherRecord::finder()->findAllBySQL($sql);
     foreach ($SplasherYearRecords as $SplasherYearRecord) {
         //checken, ob bereits ein Datensatz existiert
         $CheckRecord = TTSplasherRecord::finder()->find('idta_variante = ? AND spl_jahr = ? AND spl_monat = ? AND idtm_stammdaten = ? AND idta_feldfunktion = ? AND to_idtm_stammdaten = ?', $SplasherYearRecord->idta_variante, $SplasherYearRecord->spl_jahr, $SplasherYearRecord->spl_jahr, $SplasherYearRecord->idtm_stammdaten, $SplasherYearRecord->idta_feldfunktion, $SplasherYearRecord->to_idtm_stammdaten);
         if (!is_object($CheckRecord)) {
             $CheckRecord = new TTSplasherRecord();
         }
         $CheckRecord->idta_variante = $SplasherYearRecord->idta_variante;
         $CheckRecord->spl_jahr = $SplasherYearRecord->spl_jahr;
         $CheckRecord->spl_monat = $SplasherYearRecord->spl_jahr;
         $CheckRecord->idtm_stammdaten = $SplasherYearRecord->idtm_stammdaten;
         $CheckRecord->idta_feldfunktion = $SplasherYearRecord->idta_feldfunktion;
         $CheckRecord->to_idtm_stammdaten = $SplasherYearRecord->to_idtm_stammdaten;
         $CheckRecord->spl_faktor = $SplasherYearRecord->spl_faktor;
         $CheckRecord->save();
         unset($CheckRecord);
     }
 }
Exemplo n.º 2
0
 public function load_splasher_values()
 {
     //holen der perioden
     $Taschenrechner = new PFCalculator();
     $Taschenrechner->setStartPeriod($this->DWH_idta_perioden->Text);
     $MyRecords = StammdatenRecord::finder()->findAllByidta_stammdaten_group($this->to_idta_stammdaten_group->Text);
     foreach ($Taschenrechner->Perioden as $Periode) {
         $PerMonat = $Periode[0];
         $PerJahr = $Taschenrechner->getYearByMonth($Periode[0]);
         foreach ($MyRecords as $StammdatenRC) {
             $TTWerteRecord = TTSplasherRecord::finder()->find('spl_jahr = ? AND spl_monat=? AND idta_variante = ? AND idta_feldfunktion = ? AND idtm_stammdaten = ? AND to_idtm_stammdaten = ?', $PerJahr, $PerMonat, $this->DWH_idta_variante->Text, $this->to_idta_feldfunktion->Text, $this->From_idtm_stammdaten->Text, $StammdatenRC->idtm_stammdaten);
             $UniqueID = 'xxx' . $PerJahr . 'xxx' . $PerMonat . 'xxx' . $this->From_idtm_stammdaten->Text . 'xxx' . $StammdatenRC->idtm_stammdaten;
             if (count($TTWerteRecord) == 1) {
                 $this->RAMRecord[$UniqueID] = number_format($TTWerteRecord->spl_faktor, 2, '.', '');
             } else {
                 $TTSplasher = new TTSplasherRecord();
                 $TTSplasher->idta_feldfunktion = $this->to_idta_feldfunktion->Text;
                 $TTSplasher->idta_variante = $this->DWH_idta_variante->Text;
                 $TTSplasher->spl_jahr = $PerJahr;
                 $TTSplasher->spl_monat = $PerMonat;
                 $TTSplasher->idtm_stammdaten = $this->From_idtm_stammdaten->Text;
                 $TTSplasher->to_idtm_stammdaten = $StammdatenRC->idtm_stammdaten;
                 $TTSplasher->spl_faktor = number_format(0, 2, '.', '');
                 $TTSplasher->save();
                 $this->RAMRecord[$UniqueID] = number_format(0, 2, '.', '');
             }
         }
     }
 }