Změna vlastnosti typu Text na jiný typ
Změna vlastnosti typu Text na typ Date
Chcete-li změnit typ vlastnosti, proveďte následující:
-
Otevřete Definice vlastností, vyberte konkrétní vlastnost a změňte její datový typ. Hodnoty vlastnosti, které jsou uvedeny v některém z podporovaných formátů, se automaticky převedou na typ Date. Protože systém negarantuje automatický převod všech hodnot vlastnosti v celém záznamu, vytvoří se automaticky záloha (kopie) původní vlastnosti s názvem
<název vlastnosti> (old)
(např. "Datum výroby (old)"), která ponechá původní hodnoty.PoznámkaPodporovaný formát pro automatický převod je
dd.mm.yyyy
(např. 15.10.2015, 3.1.2015). Pokud máte většinu hodnot vlastnosti zadánu v jiném formátu, doporučujeme postupovat až do kroku 5 v tomto návodu. -
Ověřte, že systém dokázal převést všechny hodnoty, podle tohoto postupu:
- Ve stromu objektů vyberte celou organizaci.
- Na kartě Podřazené objekty zobrazte sloupce
<property name>
(typ vlastnosti Datum) a<property name> (old)
. Z místní nabídky použijte příkaz "Zobrazit v seznamech objektů". - Jakmile se zobrazí okno "Seznamy objektů", potvrďte název pohledu klávesou "Enter" a nastavte filtry ve sloupcích takto:
<property name>
=""
<property name> (old)
=not ""
Cesta ve stromu
– odstraňte filtr (poté se zobrazí objekty z celé evidence)
-
Pokud se po nastavení filtru nezobrazí žádné řádky, byly všechny hodnoty úspěšně převedeny, pokračujte krokem 7.
-
Pokud se systému nepodařilo převést pouze malý počet hodnot, doplňte hodnoty ručně. Doporučujeme seřadit hodnoty na kartě Podřazené objekty podle sloupce
<property name> (old)
a pomocí příkazu "Upravit" z místní nabídky nastavit hodnoty vlastností objektů ve sloupci<property name>
. Tímto způsobem můžete nastavit stejnou hodnotu vlastnosti pro více objektů najednou. -
Pokud se systému nepodařilo převést velké množství hodnot, postupujte podle následujících pokynů pro hromadný převod:
- V okně Seznamy objektů zobrazte v tabulce pouze sloupce "NodeId", "Type" a
<název vlastnosti> (old)
. - Z místní nabídky zvolte Tabulka -> Uložit jako a uložte tabulku jako soubor "*.CSV".
- Otevřete soubor v Microsoft Excelu a v případě potřeby upravte původní hodnoty vlastností (tj. hodnoty ve sloupci "... (old)", např. "Date of manufacture (old)") tak, aby byly všechny v jednotném formátu podporovaném nástrojem ImportUtil; viz parametr -datetimeformat nástroje ImportUtil. Poté přejmenujte sloupec s původními hodnotami na název cílové vlastnosti (tj. odstraňte příponu "(old)").
- Aktualizujte hodnoty vlastností v registru pomocí ImportUtil a parametrů -datetimeformat a -keyfields "NodeId". Pokud se import dat pro některé objekty nezdaří, upravte ručně formát dat těchto objektů v souboru CSV.
- V okně Seznamy objektů zobrazte v tabulce pouze sloupce "NodeId", "Type" a
-
Pokračujte znovu krokem 2.
-
Po dokončení převodu hodnot vlastností odstraňte vlastnost
<název vlastnosti> (old)
ze všech šablon a proveďte sjednocení podle šablon:-
Otevřete okno Nástroje - Databáze - SQL dotaz.
-
Vytvořte nový dotaz (Soubor - Nový).
-
Zadejte následující SQL dotaz:
SELECT DISTINCT
n.intNodeId,
n.txtClass [Object type],
n.txtPath+N'/'+n.txtName [Path and name of the object in the tree]
FROM vNodeClass n
JOIN tblNodeParent np on np.lintNodeId=n.intNodeId
JOIN tblNode t on t.intNodeId=np.lintParentNodeId and t.lintClassId=3
JOIN vNodeProperty pk ON n.intNodeId=pk.NodeId AND pk.ColumnName=N'<propertyName> (old)' -
V dotazu nahraďte řetězec
<název vlastnosti> (old)
názvem vaší staré vlastnosti. -
Podle cesty ve stromu vyhledejte všechny nalezené šablony objektů a odstraňte z nich starou vlastnost.
-
Sjednoťte objekty podle šablon, které upravujete.
-
Pomocí "Seznamy - Definice vlastností" odstraňte definici vlastnosti.
-
Pokud ani poté nelze definici vlastnosti odstranit, je pravděpodobně použita u objektů, které nemají šablonu. Tyto objekty můžete najít pomocí dotazu:
SELECT
n.intNodeId,
n.txtClass [Object type],
n.txtPath+N'/'+n.txtName [Path and name of the object in the tree]
FROM vNodeClass n
JOIN vPropertyKind pk ON pk.lintNodeId=n.intNodeId and pk.txtKind=N'<propertyName> (old)'
-
Dotaz můžete znovu spustit z okna Nástroje - Databáze - SQL dotaz. Nezapomeňte v dotazu změnit název vlastnosti. Odstraňte všechny takto nalezené vlastnosti a znovu odeberte definici vlastnosti.
Změna vlastnosti typu Text na typ Number
Chcete-li změnit typ vlastnosti, proveďte následující:
-
Změňte datový typ vlastnosti Text na Number. Podporovaný formát pro převod je desetinné číslo s čárkou nebo tečkou jako desetinným oddělovačem. Jako oddělovač řádů lze použít mezeru. Lze převádět také záporná čísla nebo čísla v zkráceném formátu. Například: "12 543.50", "980.56", "-1530", "1,3e-2".
-
Po převodu zkontrolujte a importujte případné nepřevedené vlastnosti, jak je popsáno při změně typu Text na typ Date.
PoznámkaPři použití ImportUtil není nutné používat přepínač -datetimeformat.
Vlastnosti datového typu Date nelze změnit na Number (ani naopak). Typy Datum nelze měnit ani u systémových položek.