Articy Forum


https://www.articy.com:443/forum/

Database imported, but names are wrong

https://www.articy.com:443/forum/viewtopic.php?f=46&t=18090

Page 1 of 2

Database imported, but names are wrong

Posted: Sat 17. Dec 2016, 21:33
by Winterblood
OK, it seems to have imported everything in my database, but all the text fields contain a string of the form: "TechnicalName.field"
So when I use an ArticyRef picker, the window is full of icons all labelled Dlg_XXXXXXXX.DisplayName or DFr_XXXXXXXX.Text, rather than showing the string contents of the variable.
These strings are the same if I browse the database in the Properties pane. Bug or user error?

...Icons and colours have imported fine though :)

Re: Database imported, but names are wrong

Posted: Mon 19. Dec 2016, 10:12
by [Articy] Nico Probst
When you see <TechnicalName>.<PropertyName> this is the localization Key of certain properties. If you continue to see these even after a full import, this indicates a problem with the localization export/import.
You can check a couple of things so i can try to reproduce the error:

  • In the articy:draft unity export, there is a checkbox "Enable localization support and create MS Excel files", if this is checked articy:draft will export using localization. You can disable that for the time being as a workaround if you want to continue to work.
  • If you have disabled that checkbox and it still produces those localization keys, then this is the bug and i have to fix it :)
  • If its checked, go into the unity folder where you exported from articy:draft (usually right into the Asset/ folder of your project works best) there should be at least one "loc_*_en.xls" file * = package name. If its not, then the export encountered a problem but silently continued (bad export!) or you copied the import file from somewhere else into your unity project, without those xls files.
  • if those xls file/s are there, and the import finished we have to check if the importer actually generated the proper assets for the localization. In the folder "Assets/Generated/Resources" should be at least one equaly named *.asset file. If not, then the importer has a problem.
  • And last but not least, if you click in unity in the menu "Articy"/"Show Database Panel" and in the database panel, check that the "Current Language" is exactly "en"(the default language). If the language is something elese, the localization system returns the before mentioned localization keys as an error indication of.

These are at the moment the only parts i can think of that could be causing a problem. It would be awesome if you can check those, so we can figure out what the problem is, or even if there wasn't a problem a place where i can add help/hints/advices so it is clearer in the first place.

Best regards

Nico

Re: Database imported, but names are wrong

Posted: Mon 19. Dec 2016, 10:37
by Winterblood
Thanks Nico - I think first time I did copy the data without the xls files, although I'm sure I reexported directly into the Assets folder after that.
Just tried re-exporting with localisation disabled, and Unity crashed during import.
Restarted and it's now giving me the following script error during import:

IndexOutOfRangeException: Array index is out of range.
(wrapper stelemref) object:stelemref (object,intptr,object)
System.Collections.Generic.Dictionary`2[System.String,VisualDesignCafe.Editor.VersionControl.FileInfo].Do_CopyTo[FileInfo,FileInfo] (VisualDesignCafe.Editor.VersionControl.FileInfo[] array, Int32 index, System.Collections.Generic.Transform`1 transform) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:312)
System.Collections.Generic.Dictionary`2+ValueCollection[System.String,VisualDesignCafe.Editor.VersionControl.FileInfo].CopyTo (VisualDesignCafe.Editor.VersionControl.FileInfo[] array, Int32 index) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:1063)
System.Collections.Generic.List`1[VisualDesignCafe.Editor.VersionControl.FileInfo].AddCollection (ICollection`1 collection) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/List.cs:122)
System.Collections.Generic.List`1[VisualDesignCafe.Editor.VersionControl.FileInfo].AddRange (IEnumerable`1 collection) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/List.cs:140)
VisualDesignCafe.Editor.VersionControl.VersionControlCache.Serialize (System.Collections.Generic.List`1& serializedCache)
VisualDesignCafe.Editor.VersionControl.VersionControlSystem.OnBeforeSerialize ()
VisualDesignCafe.Editor.VersionControl.VersionControlCacheContainer.OnBeforeSerialize ()

I have got a file called "loc_Export all Objects_en.xlsx" which contains all the right data but seems like the wrong filename?
I'll try cleaning it all out and doing a completely fresh import, see if I can narrow it down...thanks for pointers!

Re: Database imported, but names are wrong

Posted: Mon 19. Dec 2016, 11:37
by Winterblood
OK, hasn't crashed again, or errored on import.
Export without localisation has made the Articy database tab lock up - seems to be stuck in a loop repeating the following error:

ArgumentNullException: Argument cannot be null.
Parameter name: input
System.Text.RegularExpressions.Regex.Replace (System.String input, System.String replacement, Int32 count, Int32 startat)
System.Text.RegularExpressions.Regex.Replace (System.String input, System.String replacement)
Articy.Unity.Editor.ObjectPicker.ArticyObjectPicker.CreateLabelForModel (Articy.Unity.ArticyObject aModel, Int32 aSpeaker, Int32 aText)
Articy.Unity.Editor.DatabaseEditor.DrawArticyObject (Articy.Unity.ArticyObject aArticyObject, Int32 aEntryHeight)
Articy.Unity.Editor.DatabaseEditor.OnInspectorGUI ()
Articy.Unity.Editor.ArticyDatabaseEditorWindow.OnGUI ()
System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)

Going to try a clean reexport WITH localisation next...

Re: Database imported, but names are wrong

Posted: Mon 19. Dec 2016, 12:11
by Winterblood
OK, that repeating error ONLY happens if I have the Articy tab open while Unity reimports the database.
If I switch to the Properties tab while the import happens, I can go back to the Articy tab afterwards and have the correct strings (with localisation OFF). So I have workarounds at least!

Re: Database imported, but names are wrong

Posted: Mon 19. Dec 2016, 12:48
by [Articy] Nico Probst
That last error is already fixed, but not yet published afair. I will try to push the new version on the server today.

From what i read is except this last error its working for you now ? Was the localization error happening because you didn't copied the xls files and hasn't reappeared?

Re: Database imported, but names are wrong

Posted: Mon 19. Dec 2016, 17:47
by Winterblood
No, it was still giving me localisation codes instead of actual data even with the .xlsx file present :(

Ah - Unity crashed again. I re-exported with localisation enabled, into project which was working with localisation disabled. Unity began re-import but crashed. Excerpt from log:

---
mono.dll caused an Access Violation (0xc0000005)
in module mono.dll at 0033:92008a46.

Error occurred at 2016-12-19_174816.
C:\Program Files\Unity\Editor\Unity.exe, run by Chris.
60% memory in use.
16252 MB physical memory [6373 MB free].
25776 MB paging file [4851 MB free].
134217728 MB user address space [134212316 MB free].
Read from location 000000d8 caused an access violation.
---

Would you like me to upload/email the .dmp/.log?

Re: Database imported, but names are wrong

Posted: Mon 19. Dec 2016, 23:08
by [Articy] Nico Probst
No, it was still giving me localisation codes instead of actual data even with the .xlsx file present :(

Ah - Unity crashed again. I re-exported with localisation enabled, into project which was working with localisation disabled. Unity began re-import but crashed. Excerpt from log:


Hm, that doesn't sound good, never experienced those crashes myself. Can you send me the log and possibly your project (the xls and articyu3d file) data via email?
Also do you have any additional unity plugins installed?
Also i published new versions of the plugin and articy:draft to the server on Monday, please try them but i don't think that they fix the problem with those crashes but maybe with the localization issues.

Let me know how it goes.

Nico

Re: Database imported, but names are wrong

Posted: Tue 20. Dec 2016, 11:13
by Winterblood
Getting the latest versions now, thanks!
I'm afraid I have dozens of other plugins installed, I'm testing in my live project ;)
Will keep you posted how I get on...

Re: Database imported, but names are wrong

Posted: Tue 20. Dec 2016, 15:45
by Winterblood
Sorry, got distracted by today's scrum.
Latest versions - no errors or crashes so far (reimported with the Articy tab open; no problem)
I'm still getting localisation strings if I export the loc table, but I can work with the english-only for now.

Possibly of interest...having imported the loc table, if I then re-export with loc disabled over the top of the .articyu3d file (it also deletes the loc table), Unity re-imports but I still have the loc codes. I have to fully delete both Generated folders and make it do a clean import. I guess if the database already exists, it just patches it rather than recreating from scratch?

Let me know if there's anything else I can try at my end.
Hoping you can repro locally with the data I emailed earlier...thanks for your help!

All times are UTC
Page 1 of 2