View Issue Details

IDProjectCategoryView StatusLast Update
0003518ExpressionsBugpublic2020-01-06 20:32
Reporteramrit3701 Assigned Towmayer  
PriorityhighSeveritymajorReproducibilityalways
Status closedResolutionreopened 
Product Version0.18 
Fixed in Version0.18 
Summary0003518: Expressions (fx) not updated
DescriptionWhen I try to merge a parametric object in a new document, its expressions are not updated. For eg. suppose we have a parametric object which has an expression "object.Length.Value". And when I try to merge this object in some document which already have some objects, the newly merge object named as "object001" but its expression remains the same (i.e "object.Length.Value"). I expected that newly expression should changed as "object001.Length.Value".
Additional InformationOS: Ubuntu 16.04.4 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.18.13919 (Git)
Build type: None
Branch: master
Hash: 05bee3aa1fb8a27fa1528a50dc8f8b15ac5b0cce
Python version: 2.7.12
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.2.0
Locale: English/India (en_IN)
TagsNo tags attached.
FreeCAD Information

Relationships

has duplicate 0003462 closedwmayer Rename command - Rename of Spreadsheet in Document structure 

Activities

Kunda1

2018-06-22 13:04

administrator   ~0011462

Punting to @eivindkvedalen

wmayer

2018-11-11 09:59

administrator   ~0012174

https://github.com/FreeCAD/FreeCAD/commit/de074ec4f37ee8baf4c268a3bc528f4bddf8ac15

amrit3701

2019-07-06 10:16

reporter   ~0013336

@wmayer

Thanks for fixing this issue but there is still small bug present. The expression after the first operator (+, -, *, /) is not updated.

Explanation:
I have created a Cube using Part workbench and also created a sketch of rectangle. Expression of one side of the rectangle is "Box.Length" and other side is "Box.Length + Box.Length". This file has two objects (i.e. Box and sketch) and saved it as testing.fcstd.

Now, created a new document in FreeCAD, merged this testing.fcstd twice. This file has four objects (i.e. Box, Sketch, Box001 and Sketch001) and expressions of Sketch001 object are "[('Constraints[9]', 'Box001.Length'), ('Constraints[8]', 'Box001.Length + Box.Length')]".

The first expression is updated properly (Box.Length -> Box001.Length) but the expression in which operators are used is not updated properly ('Box.Length + Box.Length' -> 'Box001.Length + Box.Length'). It should be equal to `Box001.Length + Box001.Length`

Kunda1

2019-07-29 14:51

administrator   ~0013392

@wmayer should we assign this ticket to the 0.19 milestone?

yorik

2019-08-13 15:08

administrator   ~0013424

I think we would need to replace all occurences of the object name in the expression string, I could try that:
https://stackoverflow.com/questions/20406744/how-to-find-and-replace-all-occurrences-of-a-substring-in-a-string
But there might be dire implications, such as an object having the same name as a property.. Ex an object named Length...

ezzieyguywuf

2019-12-03 03:39

developer   ~0013856

Just tested this using the FreeCAD version below and was unable to reproduce the error described here. Rather, after merging the testing.fcstd document twice, the Expression with the operator was updated as expected to "Box001.Length + Box001.Length".

Has this issue been resolved?

OS: Gentoo/Linux
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.18787 (Git)
Build type: Debug
Branch: master
Hash: 9898f3b242bec84396ee30a5722f8c462223e612
Python version: 3.6.5
Qt version: 5.12.4
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/United States (en_US)

amrit3701

2019-12-03 15:06

reporter   ~0013860

@ezzieyguywuf Let me test more cases before closing this ticket.

Kunda1

2020-01-06 16:00

administrator   ~0013993

@amrit3701 any progress ?

amrit3701

2020-01-06 18:27

reporter   ~0014004

Last edited: 2020-01-06 18:30

View 3 revisions

@Kunda1 Thanks for the ping. I tested it on lastest FreeCAD 0.19v and it looks like this bug is resolved. Now we can close this ticket.

@wmayer thanks for fixing this issue!

OS: macOS 10.15
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.19145 (Git)
Build type: Release
Branch: master
Hash: c43315728cc643c6a382af0bba5b596407bbaf26
Python version: 3.7.6
Qt version: 5.12.5
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/India (en_IN)

Kunda1

2020-01-06 20:32

administrator   ~0014005

Fixed in c:FreeCAD:de074ec4f37ee8:

Issue History

Date Modified Username Field Change
2018-06-20 16:20 amrit3701 New Issue
2018-06-22 13:03 Kunda1 Project FreeCAD => Expressions
2018-06-22 13:03 Kunda1 Assigned To => eivindkvedalen
2018-06-22 13:03 Kunda1 Status new => assigned
2018-06-22 13:04 Kunda1 Note Added: 0011462
2018-11-11 09:59 wmayer Assigned To eivindkvedalen => wmayer
2018-11-11 09:59 wmayer Status assigned => closed
2018-11-11 09:59 wmayer Resolution open => fixed
2018-11-11 09:59 wmayer Fixed in Version => 0.18
2018-11-11 09:59 wmayer Note Added: 0012174
2018-11-11 11:30 wmayer Relationship added has duplicate 0003462
2019-07-06 10:16 amrit3701 Status closed => feedback
2019-07-06 10:16 amrit3701 Resolution fixed => reopened
2019-07-06 10:16 amrit3701 Note Added: 0013336
2019-07-29 14:51 Kunda1 Note Added: 0013392
2019-07-29 14:52 Kunda1 Status feedback => assigned
2019-08-13 15:08 yorik Note Added: 0013424
2019-12-03 03:39 ezzieyguywuf Note Added: 0013856
2019-12-03 15:06 amrit3701 Note Added: 0013860
2020-01-06 16:00 Kunda1 Note Added: 0013993
2020-01-06 18:27 amrit3701 Note Added: 0014004
2020-01-06 18:28 amrit3701 Note Edited: 0014004 View Revisions
2020-01-06 18:30 amrit3701 Note Edited: 0014004 View Revisions
2020-01-06 20:32 Kunda1 Status assigned => closed
2020-01-06 20:32 Kunda1 Note Added: 0014005