About PDM for FreeCAD

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
grd
Posts: 328
Joined: Wed Apr 13, 2022 5:13 am
Location: Eindhoven, The Netherlands

Re: About PDM for FreeCAD

Post by grd »

adrianinsaval wrote: Tue May 10, 2022 1:15 pm
I think that the SQL part is probably the hardest thing to do, especially since we need to be able to do things such as "Check Out" (this needs to be achieved in SQL, the VCS doesn't handle this kind of things AFAIK).
what is check out in this context? At least in git there is something called checkout and svn probably has something at least similar too.
Sorry. I meant "check out" from a file in PDM. This means that the file is locked from one user so that the other one can't save that same file into the database.

Edit: You can lock a file from SVN https://www.thegeekstuff.com/2014/07/sv ... -examples/
About Nim. Latest Release 2.0.2. Here is Nim in 100 seconds and a Nim package. There are Qt and OCCT packages.
Jee-Bee
Veteran
Posts: 2566
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: About PDM for FreeCAD

Post by Jee-Bee »

adrianinsaval wrote: Tue May 10, 2022 1:15 pm what is check out in this context?
I think that i'm the one that introduced the term "Check-out" here. It is a term that i borrowed from Windchill (A PLM system from PTC). Basically it means requesting writing access from the system. And Indeed as @grd said when i check a part out i become the owner and nobody else can edit the part.
grd
Posts: 328
Joined: Wed Apr 13, 2022 5:13 am
Location: Eindhoven, The Netherlands

Re: About PDM for FreeCAD

Post by grd »

Jee-Bee wrote: Tue May 10, 2022 2:54 pm
adrianinsaval wrote: Tue May 10, 2022 1:15 pm what is check out in this context?
I think that i'm the one that introduced the term "Check-out" here. It is a term that i borrowed from Windchill (A PLM system from PTC). Basically it means requesting writing access from the system. And Indeed as @grd said when i check a part out i become the owner and nobody else can edit the part.
And this is where I was wrong. In SVN you can lock a file, but that is not what I wanted to say. Every file inside PLM is of course read only. You can read the contents of that file, but when you want to modify that file, then you are gonna check that file out, then you modify that file and after that you are gonna check that file in.

But.......

To think about it, I think we can better use Git, simply because everyone is a lot more experienced with Git. I don't think that there is a lot of difference between Git and SVN. Both are good.
About Nim. Latest Release 2.0.2. Here is Nim in 100 seconds and a Nim package. There are Qt and OCCT packages.
heda
Veteran
Posts: 1348
Joined: Sat Dec 12, 2015 5:49 pm

Re: About PDM for FreeCAD

Post by heda »

"The question is: What do you want?"

- preferably one-size fits all, i.e. something that does not end up to be remade from ground up with scaling/extending and that is maintainable over time for the fc-community (so no absolute truths one way or the other, just some gutfeelings, and after a while of coding someone will know better)

"will probably become a WB"

- indeed, btw, use of web technology does not exclude that (openplm has a fc-wb)

"dms - no"

- not saying that dms is a full pdm, just that it might be worth a look and possibly a shorter route to extend a dms rather than a sw-repository to become a pdm...
btw, dms appears to generally have "roles" (as described by jee-bee) & "workflow"

don't have a clue, but running qt in a browser sounds like one of those things that is painfully slow, or at minimum coffee-break type of start-up times...

the other way around using html in qt is already in use in fc, click on help in start-page and for example "user-hub" - you now have a online browser showing.

anyhow, I find it useful to kick the tyres on any tech/libraries intended for use, actually on multiple alternatives - for mainly one reason, not to lock oneself into a choice too early...
would probably make a small test case with my first choice, and then see how that test case compares with different tech/libs, who knows, it might turn out that one changes ones mind.

probably worth spending some weeks with remaking the same test cases with different libs/techs on an endevour like this, for example responiveness of selected versioning system with actual data will probably start matter earlier than one first imagines it would.

looking forward to see what comes out of this, and hang in there grd!!
Jee-Bee
Veteran
Posts: 2566
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: About PDM for FreeCAD

Post by Jee-Bee »

heda wrote: Wed May 11, 2022 9:25 pm ...
To be honest i don't always understand what you meant. Partly it has to do with the formatting that it sometimes looks like your quoting somebody / something but i can't figure out how and what.
heda wrote: Wed May 11, 2022 9:25 pm - preferably one-size fits all, i.e. something that does not end up to be remade from ground up with scaling/extending and that is maintainable over time for the fc-community (so no absolute truths one way or the other, just some gutfeelings, and after a while of coding someone will know better)
I don't think a one size fits all solution exist. the only that can we tried is making the setting up as easy as possible.
heda wrote: Wed May 11, 2022 9:25 pm "dms - no"

- not saying that dms is a full pdm, just that it might be worth a look and possibly a shorter route to extend a dms rather than a sw-repository to become a pdm...
btw, dms appears to generally have "roles" (as described by jee-bee) & "workflow"
If you mean with dms a document management system. I don't think there is much difference between a pdm and dms. a pdm looks more to cad files while a dms generally looks to other type of documents.
Don't make the term roles to heavy for now.
heda wrote: Wed May 11, 2022 9:25 pm don't have a clue, but running qt in a browser sounds like one of those things that is painfully slow, or at minimum coffee-break type of start-up times...

the other way around using html in qt is already in use in fc, click on help in start-page and for example "user-hub" - you now have a online browser showing.
As far as i remember there is spoken about two things.
- addon type pdm system with / in qt / pyside
- a webkit type with as far as i know no decisions
heda wrote: Wed May 11, 2022 9:25 pm anyhow, I find it useful to kick the tyres on any tech/libraries intended for use, actually on multiple alternatives - for mainly one reason, not to lock oneself into a choice too early...
would probably make a small test case with my first choice, and then see how that test case compares with different tech/libs, who knows, it might turn out that one changes ones mind.

probably worth spending some weeks with remaking the same test cases with different libs/techs on an endevour like this, for example responiveness of selected versioning system with actual data will probably start matter earlier than one first imagines it would.
kind of agree on this. It depends on the amount options to choose from ;)
grd
Posts: 328
Joined: Wed Apr 13, 2022 5:13 am
Location: Eindhoven, The Netherlands

Re: About PDM for FreeCAD

Post by grd »

heda wrote: Wed May 11, 2022 9:25 pm anyhow, I find it useful to kick the tyres on any tech/libraries intended for use, actually on multiple alternatives - for mainly one reason, not to lock oneself into a choice too early...
would probably make a small test case with my first choice, and then see how that test case compares with different tech/libs, who knows, it might turn out that one changes ones mind.
Kicking the tyres is good and rethinking it all again is also good. The problem is reporting because when you put things into the air it could go the other way. Right now I am discussing quite a lot with @jeebee and I have to say that the things that we are talking about will probably change the outcome of the PLM discussion. You can have a look at https://github.com/grd/FreePDM/tree/mai ... ptOfDesign and https://github.com/grd/FreePDM/tree/mai ... -Workflows
About Nim. Latest Release 2.0.2. Here is Nim in 100 seconds and a Nim package. There are Qt and OCCT packages.
User avatar
Zolko
Veteran
Posts: 2213
Joined: Mon Dec 17, 2018 10:02 am

Re: About PDM for FreeCAD

Post by Zolko »

grd wrote: Tue May 10, 2022 4:35 pm Every file inside PLM is of course read only. You can read the contents of that file, but when you want to modify that file ...
how is that supposed to work in real-life : you have a project with 5 engineers, and anyone can decide which part he's gonna modify ? And what if the person forgets to release the rights ? And then goes on vacation for 2 weeks ...

My experience is very different: a system with 5 sub-systems is designed by 5 people, where evrybody has the right to read every part, but can only modify – on the server, in the central repository – those files for which the project manager has given him rights-to. If you organise the project such that each sub-system is a sub-assembly *AND* is in a sub-directory, then you can give write-rights to *THAT* subdirectory to the corresponding designer. Then, each designer is responsible for a sub-system and has write-access to that sub-system, not the others. This is doable in SVN, not in GIT or in SolidWorks PDM.
try the Assembly4 workbench for FreCAD — tutorials here and here
grd
Posts: 328
Joined: Wed Apr 13, 2022 5:13 am
Location: Eindhoven, The Netherlands

Re: About PDM for FreeCAD

Post by grd »

Zolko wrote: Thu May 12, 2022 8:59 am
grd wrote: Tue May 10, 2022 4:35 pm Every file inside PLM is of course read only. You can read the contents of that file, but when you want to modify that file ...
how is that supposed to work in real-life : you have a project with 5 engineers, and anyone can decide which part he's gonna modify ? And what if the person forgets to release the rights ? And then goes on vacation for 2 weeks ...

My experience is very different: a system with 5 sub-systems is designed by 5 people, where evrybody has the right to read every part, but can only modify – on the server, in the central repository – those files for which the project manager has given him rights-to. If you organise the project such that each sub-system is a sub-assembly *AND* is in a sub-directory, then you can give write-rights to *THAT* subdirectory to the corresponding designer. Then, each designer is responsible for a sub-system and has write-access to that sub-system, not the others. This is doable in SVN, not in GIT or in SolidWorks PDM.
You are --completely-- right and I was wrong, I got carried away. We are gonna use SVN.
About Nim. Latest Release 2.0.2. Here is Nim in 100 seconds and a Nim package. There are Qt and OCCT packages.
Jee-Bee
Veteran
Posts: 2566
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: About PDM for FreeCAD

Post by Jee-Bee »

grd wrote: Thu May 12, 2022 9:15 am You are --completely-- right and I was wrong, I got carried away.
No you're not completely wrong, worst case not completely right...
Zolko wrote: Thu May 12, 2022 8:59 am
grd wrote: Tue May 10, 2022 4:35 pm Every file inside PLM is of course read only. You can read the contents of that file, but when you want to modify that file ...
how is that supposed to work in real-life : you have a project with 5 engineers, and anyone can decide which part he's gonna modify ? And what if the person forgets to release the rights ? And then goes on vacation for 2 weeks ...
Zolko wrote: Thu May 05, 2022 10:27 am I have done exactly this for a 5-team project using Siemens NX, because the integrated PDM/PLM (TeamCenter) ....
If you have worked with Teamcenter you should be aware of this work flow. It is exactly the same
Everybody has read-only access by default. writing access to file can only when you request it(check-out a file). After editing the file you can check-in the file what is basically saving it to the server and release it.
By automatically requesting write access you don't need someone who have to do this manually but you can do this automated.
Zolko wrote: Thu May 12, 2022 8:59 am And what if the person forgets to release the rights ? And then goes on vacation for 2 weeks ...
This goes automatically when saving to the server. And I think that this are task that you should do at least daily and sometimes more often. (If a Team member Don't checking in his files you should kick him ass any way)
Zolko wrote: Thu May 12, 2022 8:59 am ...but can only modify – on the server, in the central repository – those files for which the project manager has given him rights-to.
I don't like the idea that all editing is on the central server. That means if you want to try it out you screwed since ctrl+s is a kind of sickness every engineer need(Specially with SW or Inventor). So if you edit aren't the result you aiming for you have to undo all your work compared to pull the last version on the server!
Zolko wrote: Thu May 12, 2022 8:59 am If you organise the project such that each sub-system is a sub-assembly *AND* is in a sub-directory, then you can give write-rights to *THAT* subdirectory to the corresponding designer. Then, each designer is responsible for a sub-system and has write-access to that sub-system, not the others.
I don't think this is less hassle than than checking in / checking out. This can have other problems On multiple occasions i was working on system level / assembly level stuff while colleagues of mine were busy on part level inside the same directory!
Jee-Bee
Veteran
Posts: 2566
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: About PDM for FreeCAD

Post by Jee-Bee »

BDD_Example.PNG
BDD_Example.PNG (26.47 KiB) Viewed 1523 times
@Zolko I have an example for you.
You are working on a car project. And your job is engineering the Front / Rear doors. So you have write access to that Assembly level.
A Team member of you is doing the body(level above). You have engineered something smart but that require a change in the body level.
But for whatever reason the owner of that level isn't able to do it.
I would be happy if i can just require write access to the body level. Change whatever is needed so that everything fits again and save to the server again without going to the project leader and ask for file permission(Assumed it are two different persons otherwise you have to wait)
Post Reply