public function addChildElmenents($StammdatenRecord, $parent_idtm_struktur = 0, $planungssicht = 1)
 {
     //hier holen wir erst einmal die Werte aus der tt_stammdaten_stammdaten, die zur aktuellen idtm_stammdaten gehoeren...
     $ChildElements = TTStammdatenStammdatenRecord::finder()->findAll('idtm_stammdaten_group = ? AND idta_stammdatensicht = ?', $StammdatenRecord->idtm_stammdaten, $planungssicht);
     if (count($ChildElements) >= 1) {
         foreach ($ChildElements as $ChildElement) {
             $ChildRecord = StammdatenRecord::finder()->find('idtm_stammdaten=?', $ChildElement->idtm_stammdaten);
             if (count($ChildRecord) == 1) {
                 //hier muss ich noch auslesen, welchen Strukturtyp die neuen Elemente haben...
                 $idta_struktur_type = StammdatenGroupRecord::finder()->findByidta_stammdaten_group($ChildRecord->idta_stammdaten_group)->idta_struktur_type;
                 $new_parent_idtm_struktur = $this->ifNodeExists($ChildRecord->idtm_stammdaten, $ChildRecord->stammdaten_name, $parent_idtm_struktur, $idta_struktur_type, 0, $planungssicht);
                 $this->addChildElmenents($ChildRecord, $new_parent_idtm_struktur);
             }
         }
     } else {
         //hier muss der check hin, ob es eine eine naechste Ebene ohne Original gibt
         $rsql = "SELECT stammdaten_group_name, idta_stammdaten_group, idta_struktur_type FROM vv_stammdaten_group WHERE parent_idta_stammdaten_group = '" . $StammdatenRecord->idta_stammdaten_group . "' AND idta_stammdatensicht = " . $planungssicht . "  AND sts_stammdaten_group_use = 1 ORDER BY idta_stammdaten_group";
         $BElements = StammdatenGroupView::finder()->findAllBySQL($rsql);
         if (count($BElements) >= 1) {
             foreach ($BElements as $RElement) {
                 $LOne = StammdatenRecord::finder()->findAll('idta_stammdaten_group = ? AND stammdaten_aktiv = 0', $RElement->idta_stammdaten_group);
                 foreach ($LOne as $LElement) {
                     //check, ob der knoten schon existiert, wenn ja, wird er automatisch umgeordnet
                     $new_parent_idtm_struktur = $this->ifNodeExists($LElement->idtm_stammdaten, $LElement->stammdaten_name, $parent_idtm_struktur, $RElement->idta_struktur_type, 0, $planungssicht);
                     //jetzt schauen wir, ob bei den Kindern Informationen aus der Zuordnung existieren...
                     $this->addChildElmenents($LElement, $new_parent_idtm_struktur, $planungssicht);
                 }
             }
         }
     }
 }
Example #2
0
 public function buildPivotPullDown()
 {
     $this->PBDedidta_stammdaten_group->DataSource = PFH::build_SQLPullDown(StammdatenGroupRecord::finder(), "ta_stammdaten_group", array("idta_stammdaten_group", "stammdaten_group_name"));
     $this->PBDedidta_stammdaten_group->dataBind();
     $this->PBDedparent_idtm_pivot->DataSource = PFH::build_SQLPullDown(PivotRecord::finder(), "tm_pivot", array("idtm_pivot", "idtm_pivot"), "idta_pivot_bericht = " . $this->page->idta_pivot_bericht->Text);
     $this->PBDedparent_idtm_pivot->DataBind();
 }
 public function onPreInit($param)
 {
     parent::onPreInit($param);
     $docname = "tempXML";
     $ext = "xml";
     $header = "application/xml";
     $doc = new TXmlDocument('1.0', 'ISO-8859-1');
     $doc->TagName = 'menu';
     $doc->setAttribute('id', "0");
     $QVFile = new TXmlElement('item');
     $QVFile->setAttribute('id', "new_Element");
     $QVFile->setAttribute('img', "plus5.gif");
     $QVFile->setAttribute('text', "new element");
     $StrukturElements = StrukturTypeRecord::finder()->findAll();
     foreach ($StrukturElements as $Strukturtype) {
         $ST = new TXmlElement('item');
         $ST->setAttribute('id', 'idta_struktur_type_' . $Strukturtype->idta_struktur_type);
         $ST->setAttribute('img', 's' . $Strukturtype->idta_struktur_type . ".gif");
         $ST->setAttribute('text', $Strukturtype->struktur_type_name);
         //hier muss die logik fuer die basiswerte aus den dimensionen hin...
         //hier hole ich mir die Dimensionsgruppen
         $fstsql = "SELECT stammdaten_group_name, (ta_stammdaten_group.idta_stammdaten_group) AS parent_idta_stammdaten_group FROM ta_stammdaten_group INNER JOIN tm_stammdaten ON tm_stammdaten.idta_stammdaten_group = ta_stammdaten_group.idta_stammdaten_group WHERE idta_struktur_type = " . $Strukturtype->idta_struktur_type . " GROUP BY stammdaten_group_name, parent_idta_stammdaten_group";
         $BaseGroupElements = StammdatenGroupRecord::finder()->findAllBySQL($fstsql);
         foreach ($BaseGroupElements as $BaseGroupElement) {
             $BGE = new TXmlElement('item');
             $BGE->setAttribute('id', 'idta_stammdaten_group_' . $BaseGroupElement->parent_idta_stammdaten_group);
             $BGE->setAttribute('img', 's' . $Strukturtype->idta_struktur_type . ".gif");
             $BGE->setAttribute('text', $BaseGroupElement->stammdaten_group_name);
             //zuerst hole ich alle Basiselement, die den aktuellen Strukturtypen haben
             $sql = "SELECT idtm_stammdaten,stammdaten_name, tm_stammdaten.idta_stammdaten_group FROM tm_stammdaten INNER JOIN ta_stammdaten_group ON tm_stammdaten.idta_stammdaten_group = ta_stammdaten_group.idta_stammdaten_group WHERE idta_struktur_type = " . $Strukturtype->idta_struktur_type . " AND ta_stammdaten_group.idta_stammdaten_group = " . $BaseGroupElement->parent_idta_stammdaten_group . " ORDER BY idta_stammdaten_group";
             $BaseElements = StammdatenRecord::finder()->findAllBySQL($sql);
             foreach ($BaseElements as $BaseElement) {
                 $BE = new TXmlElement('item');
                 $BE->setAttribute('id', 'idtm_stammdaten_' . $BaseElement->idtm_stammdaten);
                 $BE->setAttribute('img', 'str' . $Strukturtype->idta_struktur_type . ".gif");
                 $BE->setAttribute('text', $BaseElement->stammdaten_name);
                 $BGE->Elements[] = $BE;
             }
             $ST->Elements[] = $BGE;
         }
         $QVFile->Elements[] = $ST;
     }
     $doc->Elements[] = $QVFile;
     $CMdelete = new TXmlElement('item');
     $CMdelete->setAttribute('id', "delete_Element");
     $CMdelete->setAttribute('img', "minus.gif");
     $CMdelete->setAttribute('text', "delete element");
     $doc->Elements[] = $CMdelete;
     $docName = "temp";
     $this->getResponse()->appendHeader("Content-Type:" . $header);
     $this->getResponse()->appendHeader("Content-Disposition:inline;filename=" . $docName . '.' . $ext);
     $doc->saveToFile('php://output');
     exit;
 }
Example #4
0
 private function load_rows()
 {
     $FirstColum = new TTableRow();
     $this->mastertable->Rows[] = $FirstColum;
     $cell = new TTableCell();
     $myResult = PivotRecord::finder()->findAllByidta_pivot_bericht($this->PivotBerichtRecord->idta_pivot_bericht);
     foreach ($myResult as $Node) {
         if (!$this->check_forParents($Node)) {
             $cell->Text = StammdatenGroupRecord::finder()->findByidta_stammdaten_group($Node->idta_stammdaten_group)->stammdaten_group_name;
         }
     }
     //echo $this->NumberOfAllElements;
     $cell->setRowSpan($this->NumberOfAllElements);
     $cell->setCssClass('mandantory');
     $FirstColum->Cells[] = $cell;
     foreach ($myResult as $Node) {
         if (!$this->check_forParents($Node)) {
             $this->walkChildren($Node);
         }
     }
 }
 public function RCDeleteButtonClicked($sender, $param)
 {
     $tempus = 'RCed' . $this->RCprimarykey;
     if ($this->RCedstammdaten_group_edit_status->Text == '1') {
         StammdatenRecord::finder()->deleteByidta_stammdaten_group($this->{$tempus}->Text);
         $StammdatenRecord = StammdatenRecord::finder()->findAllByidta_stammdaten_group($this->{$tempus}->Text);
         if (count($StammdatenRecord) >= 1) {
             foreach ($StammdatenRecord as $StammRecord) {
                 $TTStammdatenRecords = TTStammdatenRecord::finder()->findAllByidtm_stammdaten($StammRecord->idtm_stammdaten);
                 foreach ($TTStammdatenRecords as $TTStammdatenRecord) {
                     TTStammdatenRecord::finder()->delteByidtm_stammdaten($TTStammdatenRecord->idtt_stammdaten);
                 }
                 TTStammdatenStammdatenRecord::finder()->deleteByidtm_stammdaten_group($StammRecord->idtm_stammdaten);
             }
         }
         $RCEditRecord = StammdatenGroupRecord::finder()->findByPK($this->{$tempus}->Text);
         $RCEditRecord->delete();
     }
     $this->buildStammdatenGroupPullDown();
     $this->bindListStammdatenGroupValue();
 }
Example #6
0
 public function transferCSVFile($sender, $param)
 {
     //check ob dimension schon besteht
     if ($sender->Id == "CSVUploadFile") {
         $idta_stammdaten_group = StammdatenGroupRecord::finder()->findBy_parent_idta_stammdaten_group($this->dim_idta_stammdaten_group->Text)->idta_stammdaten_group;
     } else {
         $idta_stammdaten_group = StammdatenGroupRecord::finder()->findBy_idta_stammdaten_group($this->dim_idta_stammdaten_group->Text)->idta_stammdaten_group;
     }
     //laden des Wertearrays
     foreach ($this->ImportedValues as $row) {
         foreach ($row as $key => $value) {
             $MyCheckRecord = StammdatenRecord::finder()->findAll('stammdaten_name = ? AND idta_stammdaten_group = ?', $value, $idta_stammdaten_group);
             if (count($MyCheckRecord) == 0) {
                 $NewStammdatenRecord = new StammdatenRecord();
                 $NewStammdatenRecord->idta_stammdaten_group = $idta_stammdaten_group;
                 $NewStammdatenRecord->stammdaten_name = $value;
                 $NewStammdatenRecord->stammdaten_key_extern = $value;
                 $NewStammdatenRecord->save();
             }
         }
     }
     $this->linkStammdaten($sender, $param);
 }
 public function initPullDowns()
 {
     $this->from_idta_stammdaten_group->DataSource = PFH::build_SQLPullDown(StammdatenGroupRecord::finder(), "ta_stammdaten_group", array("idta_stammdaten_group", "stammdaten_group_name"));
     $this->from_idta_stammdaten_group->dataBind();
     $this->to_idta_stammdaten_group->DataSource = PFH::build_SQLPullDown(StammdatenGroupRecord::finder(), "ta_stammdaten_group", array("idta_stammdaten_group", "stammdaten_group_name"));
     $this->to_idta_stammdaten_group->dataBind();
     $this->from_idta_feldfunktion->DataSource = PFH::build_SQLPullDown(FeldfunktionRecord::finder(), "ta_feldfunktion", array("idta_feldfunktion", "ff_name"));
     $this->from_idta_feldfunktion->dataBind();
     $this->to_idta_feldfunktion->DataSource = PFH::build_SQLPullDown(FeldfunktionRecord::finder(), "ta_feldfunktion", array("idta_feldfunktion", "ff_name"));
     $this->to_idta_feldfunktion->dataBind();
     $PeriodPullDown = new PFPeriodPullDown();
     $PeriodPullDown->setStructureTable("ta_perioden");
     $PeriodPullDown->setRecordClass(PeriodenRecord::finder());
     $PeriodPullDown->setPKField("idta_perioden");
     $PeriodPullDown->setSQLCondition("per_intern > 9999");
     $PeriodPullDown->setField("per_extern");
     $PeriodPullDown->letsrun();
     $this->DWH_idta_perioden->DataSource = $PeriodPullDown->myTree;
     $this->DWH_idta_perioden->dataBind();
     $this->DWH_idta_variante->DataSource = PFH::build_SQLPullDown(VarianteRecord::finder(), "ta_variante", array("idta_variante", "var_descr"));
     $this->DWH_idta_variante->dataBind();
 }
 public function buildStammdatenMapping()
 {
     $this->idta_stammdaten_group->DataSource = PFH::build_SQLPullDown(StammdatenGroupRecord::finder(), "ta_stammdaten_group", array("idta_stammdaten_group", "stammdaten_group_name"));
     $this->idta_stammdaten_group->dataBind();
     $this->bindListStammdatenValue();
 }
 public function buildFieldList($idta_stammdaten_group)
 {
     $Result = StammdatenGroupRecord::finder()->findBy_idta_stammdaten_group($idta_stammdaten_group);
     if (is_Object($Result)) {
         $this->RCTedidta_feldfunktion->DataSource = PFH::build_SQLPullDown(FeldfunktionRecord::finder(), "ta_feldfunktion", array("idta_feldfunktion", "ff_name"), "idta_struktur_type = '" . $Result->idta_struktur_type . "' AND ff_type = 1");
         $this->RCTedidta_feldfunktion->dataBind();
     }
 }
 public function checkMyParent($idta_stammdaten_group)
 {
     if (StammdatenGroupRecord::finder()->findByidta_stammdaten_group($idta_stammdaten_group)->parent_idta_stammdaten_group > 0) {
         return StammdatenGroupRecord::finder()->findByidta_stammdaten_group(StammdatenGroupRecord::finder()->findByidta_stammdaten_group($idta_stammdaten_group)->parent_idta_stammdaten_group)->idta_stammdaten_group;
     } else {
         return 0;
     }
 }
 public function initPullDowns()
 {
     $this->Tedidta_stammdaten_group->DataSource = PFH::build_SQLPullDown(StammdatenGroupRecord::finder(), "ta_stammdaten_group", array("idta_stammdaten_group", "stammdaten_group_name"));
     $this->Tedidta_stammdaten_group->dataBind();
 }
 public function create_StammdatenAll($sender, $param)
 {
     $StammdatenGroupRecord = StammdatenGroupRecord::finder()->findByidta_stammdaten_group($this->RCedidta_stammdaten_group->Text);
     $AllStammdatenRecord = StammdatenRecord::finder()->findAllByidta_stammdaten_group($this->RCedidta_stammdaten_group->Text);
     foreach ($AllStammdatenRecord as $SRecord) {
         $StammdatenRecord = StammdatenRecord::finder()->findByidtm_stammdaten($SRecord->idtm_stammdaten);
         if (count(StrukturRecord::finder()->find("idtm_stammdaten = ? AND parent_idtm_struktur = ?", $StammdatenRecord->idtm_stammdaten, $this->RCedidtm_struktur->Text)) < 1) {
             $StrukturRecord = new StrukturRecord();
             $StrukturRecord->idta_struktur_type = $StammdatenGroupRecord->idta_struktur_type;
             $StrukturRecord->idtm_stammdaten = $StammdatenRecord->idtm_stammdaten;
             $StrukturRecord->struktur_name = $StammdatenRecord->stammdaten_name;
             $StrukturRecord->parent_idtm_struktur = $this->RCedidtm_struktur->Text;
             $StrukturRecord->struktur_lft = 2;
             $StrukturRecord->struktur_rgt = 2;
             $StrukturRecord->save();
         }
     }
     $this->bindListStammdatenValue($this->RCedidta_stammdaten_group->Text);
 }