TABLE}", 0, $_GET, 'int'))) throw new Exception("Błąd parametru"); if (!(DB::getPDO()->fetchValue("select count(*) from `{$this->TABLE}` where `ID` = {$ID}"))) throw new Exception("Nie znaleziono rekordu"); $result = ACL::getAclByNamespace("default_db/{$this->TABLE}")->buildQuery(['f_ID' => "$ID", 'limit' => 1])->getItems(); // if (!$result) $result = ACL::getAclByNamespace("default_db/{$this->TABLE}/{$this->TABLE}")->buildQuery(['f_ID' => "$ID", 'limit' => 1])->getItems(); if (!$result) throw new Exception("Brak uprawnień"); $this->OBJECT = $result[0]; switch ($this->OBJECT['A_STATUS']) { case "WAITING": $this->test(); break; case "NORMAL": $this->test(); break; case "OFF_HARD": $this->test(); break; default: $this->test(); //SE_Layout::alert('danger', "Błędny status rekordu."); } } catch (Exception $e) { SE_Layout::alert('danger', $e->getMessage()); } SE_Layout::dol(); } private function test() { ?>
TODO:
Relacje do dzieci Check minOccurs Check maxOccurs
Relacje do rodzicow following/sibling Check minOccurs Check maxOccurs
Relacje akcje Dowiaz istniejacy brakujacy wymagany obiekt Dodaj brakujacy obiekt poprzez utworzenie nowego
Elementy lokalne Wskaz brakujace elementy nie wypelnione Wskaz elementy ktore sa niewlasciwie wypelnione - nie powinno ich byc Wskaz elementy ktore sa niewlasciwie wypelnione - zla treść
Elementy lokalne - zaleznosci matematyczne assert - wartosci pojedyncze Wskaz brakujace elementy nie obliczone Wskaz bledne zaleznosci obliczen - lokalna wartość niezgodna Wskaz bledne zaleznosci obliczen - zdalna wartość nie istnieje
Elementy lokalne - zaleznosci matematyczne assert - sumy Wskaz brakujace elementy nie obliczone Wskaz bledne zaleznosci obliczen - lokalna wartość niezgodna Wskaz bledne zaleznosci obliczen - zdalna wartość nie kompletna Wskaz bledne zaleznosci obliczen - zdalna wartość nie istnieje
Elementy lokalne - zaleznosci matematyczne assert - sumy Wskaz brakujace elementy nie obliczone Wskaz bledne zaleznosci obliczen - lokalna wartość niezgodna Wskaz bledne zaleznosci obliczen - zdalna wartość nie kompletna Wskaz bledne zaleznosci obliczen - zdalna wartość nie istnieje
Elementy zdalne - zaleznosci matematyczne assert - sumy Wskaz brakujace elementy nie obliczone Wskaz bledne zaleznosci obliczen - lokalna wartość niezgodna Wskaz bledne zaleznosci obliczen - zdalna wartość nie kompletna Wskaz bledne zaleznosci obliczen - zdalna wartość nie istnieje

1. Tu potrzebuje wywolac dane z recurse 1 lub 2

2. Potrzebuje dostep do struktury xsd obiektu - plik xsd, dostep do danych z rekordu - moze transakcja pociagnac

3. Potrzebuje wywolac XSLT i wywalic jego output

4. wyswietlic plik wygenerowny przez xslt

5. komunikacja - wynik z XSLT do GUI, GUI akcja do XSLT i nowy wynik - w kolko
"; print_r($this->OBJECT); $namespace = 'default_db/IN7_MK_BAZA_DYSTRYBUCJI/IN7_MK_BAZA_DYSTRYBUCJI'; $item = SchemaFactory::loadDefaultObject('SystemObject')->getItem($namespace, [ 'propertyName' => '*,field' ]); print_r($item); echo ""; } public static function getRefTables($tableFrom) { //copied from BiAuditGenerate.php static $refTables = []; if (!isset($refTables[$tableFrom])) { $namespace = "default_db/{$tableFrom}/{$tableFrom}"; try { $item = SchemaFactory::loadDefaultObject('SystemObject')->getItem($namespace, [ 'propertyName' => '*,field' ]); if (!($item['hasStruct'] && $item['isStructInstalled'] && $item['isObjectActive'])) throw new Exception("Object error"); $fields = $item['field']; $_refTables = []; foreach ($fields as $field) { list($type, $child) = explode(":", $field['xsdType'], 2); if ($type == "ref" && $field['idZasob'] && $field['isActive'] && (!$field['isLocal'])) { try { $_refTable = ACL::getRefTable($namespace, $child); $_refTables[] = $_refTable; } catch (Exception $e) { } } } $refTables[$tableFrom] = $_refTables; } catch (Exception $e) { $refTables[$tableFrom] = []; } } return $refTables[$tableFrom]; } }