Přeskočit na hlavní obsah

Změnit vlastnost typu Text na jiný typ

Změnit vlastnost typu textu na typ Datum

Chcete-li změnit typ vlastnosti, proveďte následující:

  1. Otevřete Definice vlastností, vyberte konkrétní vlastnost a změňte její datový typ. Hodnoty vlastností zadané v jednom z podporovaných formátů se automaticky převedou na typ data. Protože systém nezaručuje automatický převod všech hodnot vlastností v celém záznamu, automaticky se vytvoří záloha (kopie) původní vlastnosti s názvem "<název vlastnosti> (starý)" (např. "Datum výroby (starý)"), která zachová původní hodnoty.

    Poznámka

    Podporovaný formát pro automatickou konverzi je „dd.mm.rrrr“ (např. 15.10.2015, 3.1.2015). Pokud máte většinu hodnot vlastnosti zadaných v jiném formátu , doporučujeme sledovat až do kroku 5.

  2. Tímto postupem zkontrolujte, zda systém dokázal převést všechny hodnoty:

    1. Vyberte celou organizaci ve stromu objektů.
    2. Na kartě Podřazené objekty zobrazte "<property name>" sloupec (typ vlastnosti) a "<property name> (staré)". Z místní nabídky použijte příkaz "Zobrazit v seznamech objektů".
    3. Jakmile se objeví okno "Seznamy objektů", potvrďte název pohledu pomocí klíče "Enter" a nastavte filtry ve sloupcích takto:
      1. "<property name>"=""
      2. "<property name> (staré)"=ne ""
      3. Cesta ve stromu - odeberte filtr (pak budou zobrazeny objekty z celého inventáře)
  3. Pokud se po nastavení filtru nezobrazí žádný řádek, byly všechny hodnoty převedeny správně, proto pokračujte krokem 7.

  4. Pokud se systému nepodařilo převést malý počet hodnot, přidejte je ručně. Doporučujeme seřadit hodnoty na kartě Dětské objekty podle sloupce "<název vlastnosti> (starý) " a pomocí příkazu "Upravit" z místní nabídky nastavit hodnoty vlastností objektu ve sloupci "<název vlastnosti>". Tímto způsobem můžete nastavit stejnou hodnotu vlastnosti pro více objektů najednou.

  5. Pokud se systému nepodařilo převést velký počet hodnot, postupujte podle následujících pokynů pro hromadný převod:

    1. Zobrazit v tabulce v okně Seznam objektů pouze sloupce "NodeId", "Type" a "<property name> (staré)".
    2. Vyberte tabulku -> Uložit jako z místní nabídky a uložit tabulku jako soubor "*.CSV".
    3. Otevřete soubor v Microsoft Excel a v případě potřeby upravte původní hodnoty vlastnosti (tj. hodnoty v "... (starý)" sloupec, např. "Datum výroby (staré)") tak, aby byly všechny v jednotném formátu podporovány nástrojem ImportUtil , viz parametr -datetimeformat ImportUtil. Poté přejmenujte sloupec s původními hodnotami na název cílové vlastnosti (tj. odstraňte příponu "(staré)").
    4. Pomocí ImportUtil a parametrů -datetimeformat a -keyfields "NodeId". aktualizuje hodnotu vlastnosti v registru. Pokud import dat pro některé objekty selže, ručně upravte datový formát pro objekty v souboru CSV.
  6. Pokračujte s krokem 2 znovu.

  7. Po dokončení převodu hodnot vlastností odstraňte u všech šablon vlastnost "<property name> (old)" a proveďte sjednocení podle šablon:

    1. Otevřete okno Nástroje - Databáze - SQL dotaz.

    2. Vytvořit nový dotaz (Soubor - nový).

    3. Zadejte následující SQL dotaz:

      SELECT DISTINCT
      n.intNodeId,
      n.txtClass [Typ objektu],
      n.txtPath+N'/'+n.txtName [Cesta a název objektu ve stromu]
      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)'
    4. V dotazu nahraďte řetězec '<property name> (starý)' jménem Vaší staré vlastnosti.

    5. Postupujte podle cesty ve stromu a najděte všechny nalezené šablony objektů a odstraňte z nich původní vlastnost.

    6. Učinit objekty sjednocenými podle šablon, které upravujete.

    7. Použijte "Lists - Property Definitions" pro odstranění definice vlastnosti.

    8. Pokud ani tak nelze definici vlastnosti odstranit, je pravděpodobně použita na objekty, které nemají šablonu. Najdete je pomocí dotazu:

      ```sql
      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 spustit znovu v okně Nástroje - databáze - SQL dotaz. Nezapomeňte v dotazu změnit název vlastnosti. Odstraňte všechny takto nalezené vlastnosti a znovu odstraňte definici vlastnosti.

Změna vlastnosti typu textu na typ čísla

Chcete-li změnit typ vlastnosti, proveďte následující:

  1. Změnit datový typ vlastnosti textu na číslo. Podporovaným formátem pro převod je desetinné číslo s čárkou nebo tečkou jako desetinným oddělovačem. Jako oddělovač řádků lze použít znak mezery. Převádět lze také záporná čísla nebo čísla ve zkráceném formátu. Například: "12 543.50", "980.56", "-1530", "1,3e-2".

  2. Po převodu zkontrolujte a importujte všechny nepřevedené vlastnosti, jak bylo popsáno při změně typu Text na typ Datum.

    Poznámka

    Není třeba používat přepínač -datetimeformat při používání ImportUtil.

Varování

Vlastnosti datového typu nelze změnit na číslo (nebo naopak). Typy dat nelze měnit ani u systémových položek.