cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Need to share some code when posting a question or reply? Make sure to use the "Insert code sample" menu option. Learn more! X

SO...When is PTC adding inspection numbers. Here Lie my failures.

BG_9869104
14-Alexandrite

SO...When is PTC adding inspection numbers. Here Lie my failures.

I present to you my failures. I need a better hack. CREO 7.0.3.

 

What?: What I was trying to do is nothing new. Creating an inspection number symbol/mapkey to place and increment next to dimensions.

 

Why?: Because best case I have 11 clicks/selections to place current symbol/relate/set with average probably closer to 17 for one symbol. 150 inspection items x 17 clicks/selections = 2700 clicks/selections. My previous job drafting department refused to do inspection numbers. I can see why now that I do my own drafting and my current job does inspection numbers. 


Goal?: Select dimension, run mapkey, done. 2 clicks. Solution made within CREO. No 3rd party tools other.

I separated it out into steps. I would either combine the code at the end or nest the mapkeys.

 

  • DONE: Symbol with variable text inside (it is an oval the same as the oval around a dimension if the display is set to inspection). May need to do more here. origin? offset? baked into symbol for easier initial placement?
  • DONE: Mapkey activated relation driven counter i=i+1 if the mapkey is press.
    • IF U_COUNT
         U_INUM = U_INUM +1
         U_COUNT = NO
      ENDIF

      Could have the mapkey add the above relation and remove it as well at the end so its not left in the model.

    • mapkey $F7 @MAPKEY_LABELCount;\
      mapkey(continued) ~ Command `ProCmdDwgRelations` ;\
      mapkey(continued) ~ Activate `relation_dlg` `CBRelations` 1;\
      mapkey(continued) ~ Activate `relation_dlg` `CBLocalParams` 1;\
      mapkey(continued) ~ Select `relation_dlg` `ParamsPHLay.ParTable` 2 `rowU_COUNT` `value`;\
      mapkey(continued) ~ Select `relation_dlg` `ParamsPHLay.ParTable_INPUT` 1 `YES`;\
      mapkey(continued) ~ Activate `relation_dlg` `TBVerify`;\
      mapkey(continued) ~ Activate `UI Message Dialog` `ok`;\
      mapkey(continued) ~ Activate `relation_dlg` `PB_OK`;

      Will have a separate mapkey to set/adjust the counter start point for when that is needed

  • DONE: Mapkey to copy the current value of the parameter for inspection number to the clipboard
    • mapkey $F8 @MAPKEY_LABELCOPYNUM;\
      mapkey(continued) ~ Command `ProCmdDwgRelations` ;\
      mapkey(continued) ~ Activate `relation_dlg` `CBRelations` 1;\
      mapkey(continued) ~ Activate `relation_dlg` `CBLocalParams` 1;\
      mapkey(continued) ~ Select `relation_dlg` `ParamsPHLay.ParTable` 2 `rowU_INUM` `value`;\
      mapkey(continued) ~ Activate `relation_dlg` `TBCopy`;\
      mapkey(continued) ~ Activate `relation_dlg` `PB_OK`;
  • HOW?: Placement. Will select a dimension I want an inspection symbol next to and Run the mapkey. The symbol placement workflow wants me to select the offset reference after I open the custom symbol dialog. I tried selecting the dim and opening the dialog but the selected item does not carry into the placement. If only &sym(name) worked in dimension text that would solve alignment and offset(I even tried adding the symbol to the model. Even with the symbol saved to the model in MBD the &sym option can not be used in dimension text. Have been trying several options for work arounds.
  • HOW?: Pasting everywhere. The TBCopy TBPaste TBSelectall commands only work in certain places. If I have to send it to text file and retrieve I guess but come on, gotta be a better hack. I have autohotkey but I cant mix macros in together and expect others at the company to be able to use without some huge training.  

The inspection symbol placement would really be best if baked into the dimension / gtol text. Shame CREO does not have the ability to place custom symbols there.

The placement is really a bear. I currently output 2D drawings and a model to Windchill 11 but have been implementing steps closer and closer to complete MBD. I noted that custom symbols can not be placed related/offset/inside dimensions or gtols in 3D annotation in the model. Only free or with leader to the part. Which is a show stopper.

I almost just went with the 1990s looking text prefix like this in the dimension text "<001>@D" I still had no way to paste the inspection number from the clipboard. Its there just ripe for a CTRL-V though.

@[ and@] would put a box around "and"(which means basic dimension on my drawings) if only CREO had @( and @) to put the inspection oval around text this would be a lot easier. 

 

The implementation really needs to be baked in parametric for best results on Inspection Reports. Select dimension/gtol, enable inspection ID number. A nice oval around an ID number appears by the dimension/gtol/surface fin/note. All connected up with the dimension and tolerance values to output a report.

I even thought about using the dimension symbol @S but that can be renamed sometimes for parts controlled by relations(springs commonly). Plus being able to display the value of @S and @D at the same time may be a trick in itself.  

 

I'll give up for now and will keep doing my Death By Clicks routine. 

3rd Party software options for "ballooning" and inspection numbers:
https://fishbowlsolutions.com/
http://piosoftware.com/

https://www.inspectionxpert.com/

https://www.discussoftware.com/

https://www.sf.com/

https://sigmaxim.com/

https://boundarysys.com/

 

ACCEPTED SOLUTION

Accepted Solutions
BG_9869104
14-Alexandrite
(To:BG_9869104)

Thank you for that input. An while I agree the VBS could probably do it all the problem with VBS is I do not know how to code. I went that small step into VBS as proof of concept. For my case it too messy to have VBS and Mapkey trying to do jobs like this. I can only afford complication to get mapkeys setup that will work from complete newbie to experienced user in the corporate config.pro.

If I had the ability I would look into making a TOOLKIT extension. I think that is the answer.

There is a reason there are several search results for inspection number and ballooning, several 3rd party tools for it, and no good CREO based solutions. It does not exist.

This one looks unsolvable within CREO at this time.

 

Current options that would be within my requirements until more hacks for mapkeys are found:

Solution 1: VB API or other API at lower license tiers
Solution 2: Be a coding expert and write a TOOLKIT based solution

Solution 3: Buy an existing TOOLKIT 3rd party solution

I do not have the skill for any of those so I am SOL on doing the task myself. I'll probably have to wait for CREO 9000 for a good integrated inspection balloon and FAIR feature built in.

View solution in original post

9 REPLIES 9


@BG_9869104 wrote:

I present to you my failures. I need a better hack. CREO 7.0.3.

 

What?: What I was trying to do is nothing new. Creating an inspection number symbol/mapkey to place and increment next to dimensions.

 

Why?: Because best case I have a 11 clicks/selections to place current symbol/relate/set with average probably closer to 17 for one symbol. 150 inspection items x 17 clicks/selections = 2700 clicks/selections. My previous job drafting department refused to do inspection numbers. I can see why now that I do my own drafting and my current job does inspection numbers. 


Goal?: Select dimension, run mapkey, done. 2 clicks

I separated it out into steps. I would either combine the code at the end or nest the mapkeys.

 

  • DONE: Symbol with variable text inside (it is an oval the same as the oval around a dimension if the display is set to inspection). May need to do more here. origin? offset? baked into symbol for easier initial placement?
  • DONE: Mapkey activated relation driven counter i=i+1 if the mapkey is press.
    • IF U_COUNT
         U_INUM = U_INUM +1
         U_COUNT = NO
      ENDIF

      Could have the mapkey add the above relation and remove it as well at the end so its not left in the model.

    • mapkey $F7 @MAPKEY_LABELcount2;~ Command `ProCmdDwgRelations` ;\
      mapkey(continued) ~ Select `relation_dlg` `ParamsPHLay.ParTable` 2 `rowU_COUNT` `value`;\
      mapkey(continued) ~ Select `relation_dlg` `ParamsPHLay.ParTable_INPUT` 1 `YES`;\
      mapkey(continued) ~ Activate `relation_dlg` `TBVerify`;\
      mapkey(continued) ~ Activate `UI Message Dialog` `ok`;\
      mapkey(continued) ~ Activate `relation_dlg` `PB_OK`;

      Will have a separate mapkey to set/adjust the counter start point for when that is needed

  • DONE: Mapkey to copy the current value of the parameter for inspection number to the clipboard
    • mapkey $F8 @MAPKEY_LABELCOPYNUM;~ Command `ProCmdDwgRelations` ;\
      mapkey(continued) ~ Select `relation_dlg` `ParamsPHLay.ParTable` 2 `rowU_INUM` `value`;\
      mapkey(continued) ~ Activate `relation_dlg` `TBCopy`;\
      mapkey(continued) ~ Activate `relation_dlg` `PB_OK`;
  • HOW?: Placement. Will select a dimension I want an inspection symbol next to and Run the mapkey. The symbol placement workflow wants me to select the offset reference after I open the custom symbol dialog. I tried selecting the dim and opening the dialog but the selected item does not carry into the placement. If only &sym(name) worked in dimension text that would solve alignment and offset(I even tried adding the symbol to the model. Even with the symbol saved to the model in MBD the &sym option can not be used in dimension text. Have been trying several options for work arounds.
  • HOW?: Pasting everywhere. The TBCopy TBPaste TBSelectall commands only work in certain places. If I have to send it to text file and retrieve I guess but come on, gotta be a better hack. I have autohotkey but I cant mix macros in together and expect others at the company to be able to use without some huge training.  

The inspection symbol placement would really be best if baked into the dimension / gtol text. Shame CREO does not have the ability to place custom symbols there.

The placement is really a bear. I currently output 2D drawings and a model to Windchill 11 but have been implementing steps closer and closer to complete MBD. I noted that custom symbols can not be placed related/offset/inside dimensions or gtols in 3D annotation in the model. Only free or with leader to the part. Which is a show stopper.

I almost just went with the 1990s looking text prefix like this in the dimension text "<001>@D" I still had no way to paste the inspection number from the clipboard. Its there just ripe for a CTRL-V though.

@[ and@] would put a box around "and"(which means basic dimension on my drawings) if only CREO had @( and @) to put the inspection oval around text this would be a lot easier. 

 

The implementation really needs to be baked in parametric for best results on Inspection Reports. Select dimension/gtol, enable inspection ID number. A nice oval around an ID number appears by the dimension/gtol/surface fin/note. All connected up with the dimension and tolerance values to output a report.

I even thought about using the dimension symbol @S but that can be renamed sometimes for parts controlled by relations(springs commonly). Plus being able to display the value of @S and @D at the same time may be a trick in itself.  

 

I'll give up for now and will keep doing my Death By Clicks routine. 

3rd Party software options for "ballooning" and inspection numbers:
https://fishbowlsolutions.com/
http://piosoftware.com/

https://www.inspectionxpert.com/

https://www.discussoftware.com/

https://www.sf.com/

https://sigmaxim.com/

https://boundarysys.com/

 


Hi,

maybe if I were you, I would use the following procedure.

  • I would use an external text file to store inspection number
  • I would use AutoIt to read inspection number and increase it by 1
  • I would add inspection number at the end of dimension
  • I would place empty oval symbol over inspection number
  • I would relate symbol to view

Other possiblity ... develop Toolkit application -OR- find a company that will develop it.


Martin Hanák
BG_9869104
14-Alexandrite
(To:MartinHanak)

  • The counter + store last used value and mapkeys gets the number into the clipboard. No need to add external file to the mix for that.
  • Autoit/Autohotkey could likely do it all but, I cannot force other users to learn those and I cant install those on the work machines. 
  • I prefer beginning because of added text on some dims. To each their own here. Same difficulty either location
  • Having the inspection text and the symbol not together pretty much means it will never be centered my OCD barely can take the related symbol I use now being in any position close to the dimension now. 
  • Right now each Symbol in 2D is related or offset from the dimension it goes to. By view would not move the symbols when making changes to dimension locations. And back to MBD the symbols can not be related to the dimension.gtols/notes at all. 

I'll continue on the hunt for a what to get CREO mapkey to paste from clipboard into the fields I need to fill.

BG_9869104
14-Alexandrite
(To:BG_9869104)

I tried a few more things

 

customized my quick access toolbar with the copy and paste buttons added and tried to record with those.. I got punked though. CREO greys then out a lot of the time and they cannot be used even though my cursor is in a text box and ctrl-v on the keyboard works in these text entry locations.

 

I tried to use a VBscript with sendkeys to send the ctrl+v which does not place nice when attempted from mapkey. I made the VBs and it works if ran from a Windows keyboard shortcut in creo notes only so far. When the window focus is toggled the cursor do not come back to the dimension text input area it was before you left focus.

So I changed my approach on the VBscript and had it send the keys to make mapkeys run.

 

set WshShell = WScript.CreateObject("WScript.Shell")
WScript.Sleep 50
WshShell.SendKeys "%{Esc}"
WScript.Sleep 50
WshShell.SendKeys "{F9}"
WScript.Sleep 50
WshShell.SendKeys "<"
WshShell.SendKeys "^v"
WshShell.SendKeys ">"
WScript.Sleep 50
WshShell.SendKeys "{Esc}"

 

The "F9" runs a mapkey that get to the dimension text edit box and get the cursor in the right spot.

 

Then "<""ctrl-v"">" are sent. The result is the contents of the clipboard are pasted in the dimension text. 
Looks like this

<88>75±0.1

 

Closer

 

 

Chris3
21-Topaz I
(To:BG_9869104)

If you are going to write a VBScript then you can do what I do. Have the mapkey call the VBScript. The VBScript writes out a new mapkey to a config.pro file. The first mapkey loads in the config.pro file with the VBScript mapkey and the first mapkey then calls the second mapkey.

 

The VBScript takes care of any custom iterating / pasting of numbers needed.

 

You can even then have the first mapkey delete the second mapkey so it never shows up to the user.

BG_9869104
14-Alexandrite
(To:BG_9869104)

Thank you for that input. An while I agree the VBS could probably do it all the problem with VBS is I do not know how to code. I went that small step into VBS as proof of concept. For my case it too messy to have VBS and Mapkey trying to do jobs like this. I can only afford complication to get mapkeys setup that will work from complete newbie to experienced user in the corporate config.pro.

If I had the ability I would look into making a TOOLKIT extension. I think that is the answer.

There is a reason there are several search results for inspection number and ballooning, several 3rd party tools for it, and no good CREO based solutions. It does not exist.

This one looks unsolvable within CREO at this time.

 

Current options that would be within my requirements until more hacks for mapkeys are found:

Solution 1: VB API or other API at lower license tiers
Solution 2: Be a coding expert and write a TOOLKIT based solution

Solution 3: Buy an existing TOOLKIT 3rd party solution

I do not have the skill for any of those so I am SOL on doing the task myself. I'll probably have to wait for CREO 9000 for a good integrated inspection balloon and FAIR feature built in.

If you can hack around with Mapkeys and VBscript, then you can probably cobble something with VB API, or maybe Creo|SON?

You are going straight to TOOLKIT, so just asking if you looked at the coding tools already available with your Creo license.

BG_9869104
14-Alexandrite
(To:BG_9869104)


https://www.youtube.com/watch?v=QJwXDruJPC0

Creo 10 is showing off inspection ballooning but I do not think they implemented much of the desired features around it.  Just enhanced backend to the manual ballooning process. No auto indexing or auto incrementing shown. No refactoring support(which would also need fix indexing support). I hope I can use at least what is covered in the video in 2D/Show in 2D DRW even if its all created in MBD mode. 

If you run CREO 10 please chime in and update us on the hot new inspection ballooning. 🙂

I think all they did was make it so you can relate a symbol to any dim or gtol. Before (me on creo7) for example I could not relate my custom inspection balloon to gtol that was related to dimension. So the work around was relate all to the root dimension. All the tell/symbols moved together then. Problem was downstream in software multiple inspection number related to one dimension and none to others. The CREO 10 relating would get that solved and hopefully be able to spit out an indexed inspection report. (wishful thinking)

Creo 10 introduces a new placement option for symbols and surface finish annotations in Model-Based Definition. The new placement option allows you to relate those symbols to other annotations, causing them to behave as a group. There is also a new cross highlighting between related annotations ...
StephenW
23-Emerald III
(To:BG_9869104)

That looks like just a custom symbol.

BG_9869104
14-Alexandrite
(To:StephenW)

Yup. which is what I use now. If that is all it is then the only thing the is updated is being able to assign the symbol to the correct dim/gtol unlike before having to relate to the root item as a workaround

Announcements
NEW Creo+ Topics: Real-time Collaboration


Top Tags