Can't rename older Custom Categories?

I created my own categories to organize my library - used to be that I could always rename any of them.  Now at some point in time, rename is greyed out.  I can rename new categories I create.  How to fix it?

Comments

  • They do have the U (for User) icon?

  • NorthOf45NorthOf45 Posts: 5,542

    Did you re-import user data at some point? I had the same problem, but no one had any solution (Can't edit my own categories after re-importing metadata on new computer). I found that by copying everything to a new Category group gets you back the ability to edit them. Then, just delete the old Category group and rename the new one to what you were using before. And don't forget to export the user data before you do anything.

  • They do have the U (for User) icon?

    No.  Interesting.  Situation sounds similar to NorthOf45 I believe.

    This is on a new install on a new computer.  I exported my categories from the prior system, then imported them here.  It looks like all the ones I imported don't have the U icon.  I didn't put them under the Default category, I don't know why that would have happened.  I set it up a few months back but just noticed.

     

    Categories.JPG
    357 x 641 - 27K
  • NorthOf45NorthOf45 Posts: 5,542

    That sounds exactly like what happened to me. New computer, new install, import user data from previous installation. But, even another older installation on the laptop did the same thing, but I never noticed it.

  • Serene NightSerene Night Posts: 17,672

    Yep that’s why I switched to manual install and categorization.

  • Gator_2236745Gator_2236745 Posts: 1,312
    edited December 2017

    Yep that’s why I switched to manual install and categorization.

    I don't think manual install matters in this case, the funky categories were imported from another computer.

    Also the other computer is still up, thed categories all have the U like they should.
    Post edited by Gator_2236745 on
  • NorthOf45NorthOf45 Posts: 5,542

    Yep that’s why I switched to manual install and categorization.

    I believe we are talking about manual categorization. All my user categories were read-only. Maybe when importing user data, CMS says "I didn't make that" and flags it differently. Databases can be very particular about who accesses the data. Or maybe when re-importing metadata, it is all treated as internal categories (which cannot be changed directly in the Content Library)

  • @Richard Haseltine - I'm almost positive they were User categories, that didn't get imported that way.  Is there a way to convert them?

    Thanks!

  • I've noticed the same thing a few times.  Any time you import your categories, it flags them all as locked-in.  You can't rename them, but you can copy them to a new folder with the name you want, then delete the old one.

  • From which version were the cateogies exported, do you know? There's an entry in the 4.9.2.32 change-log reading

    Properly migrate user categories

    I'm not sure how, or if, problems can be fixed once they exist.

  • From which version were the cateogies exported, do you know? There's an entry in the 4.9.2.32 change-log reading

    Properly migrate user categories

    I'm not sure how, or if, problems can be fixed once they exist.

    I'm not 100%, I don't think it's written into the file but I'm pretty sure 4.9.4.122.

     

    Shoot.  Do you know if I I import twice, will the newer stuff simply append over the existing?

    I have my older computer, I haven't categorized used content.  So that one is at an October point in time.  There's my new computer, which I've added stuff to my library & categorized since.  If I export, nuke, and import I'd expect to be at the same place.

    Would this work?

    1. I upgrade my old computer to 4.10 & export the categories.

    2. Export categories on the new computer.

    3. Delete my categories on the newer computer.

    4. Import categories from old computer.

    5. Import categories from new computer.

  • I'm not sure  -certainly, back up the database (with DS closed) before trying - it's in the Content Cluster directory, listed in Edit>Preferences>CMS Settings

  • tcnkk_e2d2dc4e8btcnkk_e2d2dc4e8b Posts: 15
    edited December 2017

    Greetings!

    I've had this same issue since August and tech support from Daz has been less than helpful.  This is the first solution I've heard for this issue that didn't involve deleting my database and re-creating my Categories section, as tech support suggested, or waiting for the next version of DS in hopes they've addressed this "bug". @Northof45, when you copied everything into a new category group, did you simply right-click your category subgroup, select "copy", then paste it into the new category group, all from inside DS 4.*?? And how do you get a new Categories group to nest in the same database level as it is now?  The only way I can make this work is as a sub-category...thanks!

    Post edited by tcnkk_e2d2dc4e8b on
  • Hi all! I ran into the same problem after installing Daz on a new computer and exporting and re-importing my content database with a lot of custom categories to organize my assets. All my custom categories were read-only. I couldn't find any solution and only found this post, so I took a look at the contents of the database.

    The table "tblCategories" in the CMS contains the category definitions. The "fldIsVendor" column marks if a category is considered vendor-defined; this is a boolean, and if it's true, the category is read-only in Daz Studio and cannot be renamed. There seems to be a bug with the database export or import in that the flag is not correctly exported or imported (haven't checked which).

    I'll also file a bug report about this.

    For now, here's how to fix this. PostgreSQL comes with a command-line interface that you can use to modify database contents, so for this you'll need to be comfortable with a command-line terminal. This can probably also be done with some database GUI but I'm not familiar with those as I find the terminal more convenient.

    BE VERY CAREFUL WHEN MESSING WITH THE DATABASE DIRECTLY, ONE TYPO CAN MESS UP A LOT OF DATA. Make a full database backup before attempting this.

    1. Make sure the PostgreSQL server is running, e.g. by starting Daz Studio and keeping it running in the background.
    2. Use the "psql.exe" client to connect to the database: open a terminal window, "cd" to the "bin" directory under the PostgreSQL directory (on my system, "C:\Program Files\DAZ 3D\PostgreSQL CMS\bin".
    3. Verify with "dir" that there is a "psql.exe" in that directory.
    4. Type: "psql -p 17237 -U dzcms Content". This connects to the PostgreSQL server, which Daz configures to listen on port 17237 on localhost. "dzcms" is the user account, it exists only in the database and is not known to Windows. "Content" is the name of the database.
    5. You might get a warning about console codepages, we can ignore this for now as we'll only deal with ASCII characters.
    6. In SQL databases like Postgres, data is organized in tables with rows and columns. To change the read-only flag for a category, you need to know its row index. To find a category by name (without respect to case), type:
    7. select * from "tblCategories" where "fldCategoryName" ILIKE '%my favorite piece of clothing%';

      This doesn't modify anything yet, the SELECT statement in SQL is for looking at data only. The asterisk (*) means "print all columns of the matching rows", ILIKE is for case-insensitive searching, the percent (%) characters in the search strings are wildcards like "*" in DOS, meaning that there can be any leading or trailing characters. Use the double and single quotes exactly as above. SQL is old and sometimes bizarre, and PostgreSQL is also more picky than other SQL databases (table and column names use double quotes, strings use single quotes).

    8. This should print something like:

    9.  RecID | fldIsVendor | fldIsUnassigned | fldNewCount |     fldCategoryName           | fldCategoryParent-------+-------------+-----------------+-------------+-------------------------------+-------------------   701 | t           | f               |           0 | My Favorite Piece Of Clothing |               585

      701 is the row index we're looking for. "fdIsVendor" is "t" for "true" here, so the row is read-only. We need to change it to "f" for "false":

    10. update "tblCategories" set "fldIsVendor" = 'f' where "RecID" = 701;

      Or, to change all child categories that have that same parent, use the number from the "fldCategoryParent" column, like:

    11.  update "tblCategories" set "fldIsVendor" = 'f' where "fldCategoryParent" = 585;

       

    DO NOT JUST COPY AND PASTE THE NUMBERS; THEY WILL BE DIFFERENT ON YOUR SYSTEM. You need to find out the row IDs on your system with the "select" statement first.

    Keep the terminal open, go back to Daz Studio, click on the "Categorize" menu item of any piece of clothing, and the category should be editable now. Daz seems to be reloading the list of categories from the database every time the dialog opens, but I guess clicking "Refresh" in the content library or smart content won't hurt either.

    Hope this helps!

    ManFriday

     

  • As noted above, this was an issue with older versions of DS. A better fix might have been, if possible, to install the current version (with the fix) on your old system and export from that before transferring the files across.

  • Hi Richard.  I don‘t think the problem is fixed. I had it two weeks ago with 4.11 beta. 

  • evacynevacyn Posts: 975

    I always just use 'Duplicate Category > Selected Category & Sub-Categories' on the custom category that's read only. The new (duplicate) version can be renamed and the old (original) category I just delete.

  • Were the categories showing correctly on the old system? Were there also older userdata files which might have had the bad category specifications?

  • @evacyn, I wasn't aware of that option, thanks!

    @Richard, Yes, they were showing correctly on the old system. I have only been using Daz Studio for about one year. I started out with Daz 4.10 and have been running the 4.11 beta almost exclusively for months. I never once ran 4.9.

    I got the new PC two weeks ago and exported the categories with 4.11 (I think) on the old system and imported them with 4.11 on the new system. 100% of the categories I created myself came out read-only on the new system. Only these two PCs ever ran Daz Studio. So I don't think any old legacy data could have caused this.

     

  • lcfarlcfar Posts: 88

    If you re-import the metadata, it changes all your User categories to System categories. You can't rename or move System categories, only delete or copy them. This isn't new, it's been happening to me for several versions of DS and it doesn't matter if you import to a new installation of DS or re-import to an existing one. To change the name of a System category, the workaround is copy the category to a new one with the name you want and delete the old one. A newly created category will be a User category.

    custom_categories.JPG
    783 x 300 - 37K
  • lcfar said:

    If you re-import the metadata, it changes all your User categories to System categories. You can't rename or move System categories, only delete or copy them. This isn't new, it's been happening to me for several versions of DS and it doesn't matter if you import to a new installation of DS or re-import to an existing one. To change the name of a System category, the workaround is copy the category to a new one with the name you want and delete the old one. A newly created category will be a User category.

    Categories can't be deleted or renamed as then there would be nothing to tell the CMS not to restore them on the enxt metadata update - instead they can, as you've found, be hidden. The hidden categories can be restored to viwe in the Content tab of the Preferences dialogue.

    -------------------------------------

    How imported metadata behaves does depend on how it was exported - Rob points out that this is discussed here https://www.daz3d.com/forums/discussion/comment/1000831/#Comment_1000831

  • ManFridayManFriday Posts: 569
    edited March 2019

    Thanks for the link, Richard, It seems the behavior is intentional. I won‘t file a bug report until I’ve read that properly. 

    Post edited by ManFriday on
  • ManFriday said:

    Hi all! I ran into the same problem after installing Daz on a new computer and exporting and re-importing my content database with a lot of custom categories to organize my assets. All my custom categories were read-only. I couldn't find any solution and only found this post, so I took a look at the contents of the database.

    The table "tblCategories" in the CMS contains the category definitions. The "fldIsVendor" column marks if a category is considered vendor-defined; this is a boolean, and if it's true, the category is read-only in Daz Studio and cannot be renamed. There seems to be a bug with the database export or import in that the flag is not correctly exported or imported (haven't checked which).

    I'll also file a bug report about this.

    For now, here's how to fix this. PostgreSQL comes with a command-line interface that you can use to modify database contents, so for this you'll need to be comfortable with a command-line terminal. This can probably also be done with some database GUI but I'm not familiar with those as I find the terminal more convenient.

    BE VERY CAREFUL WHEN MESSING WITH THE DATABASE DIRECTLY, ONE TYPO CAN MESS UP A LOT OF DATA. Make a full database backup before attempting this.

    1. Make sure the PostgreSQL server is running, e.g. by starting Daz Studio and keeping it running in the background.
    2. Use the "psql.exe" client to connect to the database: open a terminal window, "cd" to the "bin" directory under the PostgreSQL directory (on my system, "C:\Program Files\DAZ 3D\PostgreSQL CMS\bin".
    3. Verify with "dir" that there is a "psql.exe" in that directory.
    4. Type: "psql -p 17237 -U dzcms Content". This connects to the PostgreSQL server, which Daz configures to listen on port 17237 on localhost. "dzcms" is the user account, it exists only in the database and is not known to Windows. "Content" is the name of the database.
    5. You might get a warning about console codepages, we can ignore this for now as we'll only deal with ASCII characters.
    6. In SQL databases like Postgres, data is organized in tables with rows and columns. To change the read-only flag for a category, you need to know its row index. To find a category by name (without respect to case), type:
    7. select * from "tblCategories" where "fldCategoryName" ILIKE '%my favorite piece of clothing%';

      This doesn't modify anything yet, the SELECT statement in SQL is for looking at data only. The asterisk (*) means "print all columns of the matching rows", ILIKE is for case-insensitive searching, the percent (%) characters in the search strings are wildcards like "*" in DOS, meaning that there can be any leading or trailing characters. Use the double and single quotes exactly as above. SQL is old and sometimes bizarre, and PostgreSQL is also more picky than other SQL databases (table and column names use double quotes, strings use single quotes).

    8. This should print something like:

    9.  RecID | fldIsVendor | fldIsUnassigned | fldNewCount |     fldCategoryName           | fldCategoryParent-------+-------------+-----------------+-------------+-------------------------------+-------------------   701 | t           | f               |           0 | My Favorite Piece Of Clothing |               585

      701 is the row index we're looking for. "fdIsVendor" is "t" for "true" here, so the row is read-only. We need to change it to "f" for "false":

    10. update "tblCategories" set "fldIsVendor" = 'f' where "RecID" = 701;

      Or, to change all child categories that have that same parent, use the number from the "fldCategoryParent" column, like:

    11.  update "tblCategories" set "fldIsVendor" = 'f' where "fldCategoryParent" = 585;

       

    DO NOT JUST COPY AND PASTE THE NUMBERS; THEY WILL BE DIFFERENT ON YOUR SYSTEM. You need to find out the row IDs on your system with the "select" statement first.

    Keep the terminal open, go back to Daz Studio, click on the "Categorize" menu item of any piece of clothing, and the category should be editable now. Daz seems to be reloading the list of categories from the database every time the dialog opens, but I guess clicking "Refresh" in the content library or smart content won't hurt either.

    Hope this helps!

    ManFriday

     

    Thank you very much!

    After I transfered all my content to a new PC (Windows11), all my categories became read-only. Fortunately I've enough knowledge in SQL ;-)

    BTW: This happend for the latest DAZ-Studio Version 4.20.0.2 and PostgreSQL 9.3.4 (I never had to upgrade from the old database)

Sign In or Register to comment.