iLogic to To achieve key board TAB key functionality

iLogic to To achieve key board TAB key functionality

RoyWickrama_RWEI
Advisor Advisor
1,176 Views
4 Replies
Message 1 of 5

iLogic to To achieve key board TAB key functionality

RoyWickrama_RWEI
Advisor
Advisor

I do with very large (huge) models and the drawings are in couple of hundred sometimes. Mostly, check in is done without any data in the text box for comments. So need to have the OK button activated, so that (having opened so many drawings)  hit Check In first and then press ENTER will check the document in.

 

Need to fix the following to achieve the keyboard functionality.

ThisApplication.CommandManager.ControlDefinitions.Item("VaultCheckinTop").Execute2(True)

 

TAB.png

Text Box.png

0 Likes
1,177 Views
4 Replies
Replies (4)
Message 2 of 5

RoyWickrama_RWEI
Advisor
Advisor

TAB.png

0 Likes
Message 3 of 5

AlexFielder
Advisor
Advisor

Autohotkeys can do what you want without iLogic, here's an example from an old .ahk file:

 

#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.

; should disable the F1 key unless it's pressed in conjunction with the shift key.
#IfWinActive AutoCAD
+F1::F1 ; (Shift + F1 = F1)
F1::Escape ; (F1 = Escape)
ScrollLock::Escape ; (ScrollLock = Escape)
PrintScreen::Shift ; (Printscreen = Shift)
#IfWinActive
#IfWinActive Autodesk
+F1::F1 ; (Shift + F1 = F1)
F1::Escape ; (F1 = Escape)
#IfWinActive

;should provide today's date in YYYY-MM-DD format:
+^d::
FormatTime, CurrentDateTime,, ShortDate
Send %CurrentDateTime%
return

;should allow us to insert something from the clipboard inside Inventor
#IfWinActive Autodesk Inventor
+^m::Send Master-{ENTER}
return

#IfWinActive Parameters
+^m::Send Master{ENTER}
return

You could copy the "IfWinActive Autodesk Inventor" section and modify it to "IfWinActive Blah Blah" and have it send {TAB}{ENTER} or whatever.

 

FWIW: I'm not aware of any method using iLogic that can interrogate the active window, or wait for a built-in command to fire (unless the events system has been sufficiently improved of course?). 

 

Am naturally happy to be corrected on the above statement!

 

The only other alternative is a .NET addin - wherein you can wait for the "UserInputEvents.OnActivateCommand" event to fire, check what the command name is and then maybe use sendkeys to send a "TAB" to the Vault dialogue.

Here's a useful blog post on this: http://modthemachine.typepad.com/my_weblog/2009/03/running-commands-using-the-api.html

And this shows it in action: http://adndevblog.typepad.com/manufacturing/2012/05/know-every-execution-command-name-within-the-cur...

 

The bigger question I have is why do you want your users to simply "click-through" these Vault logins? The biggest bonus of using Vault (from my experience) is that it gives you (when you need it) an audit trail of who has done what, when and why; encouraging lots of blank, blank, blank in the file history diminishes the usefulness of the system.

 

Just my $0.02,

 

Cheers,

 

Alex.

 

 

Message 4 of 5

bradeneuropeArthur
Mentor
Mentor
Please read this first:
https://forums.autodesk.com/t5/inventor-customization/use-inventor-vault-add-in-through-inventor-api...

herewith you can also hide the dialog.
let me know if you need further assistance..

Regards,

Arthur Knoors

Autodesk Affiliations & Links:
blue LinkedIn LogoSquare Youtube Logo Isolated on White Background


Autodesk Software:Inventor Professional 2025 | Vault Professional 2024 | Autocad Mechanical 2024
Programming Skills:Vba | Vb.net (Add ins Vault / Inventor, Applications) | I-logic
Programming Examples:
Drawing List!|
Toggle Drawing Sheet!|
Workplane Resize!|
Drawing View Locker!|
Multi Sheet to Mono Sheet!|
Drawing Weld Symbols!|
Drawing View Label Align!|
Open From Balloon!|
Model State Lock!
Posts and Ideas:
My Ideas|
Dimension Component!|
Partlist Export!|
Derive I-properties!|
Vault Prompts Via API!|
Vault Handbook/Manual!|
Drawing Toggle Sheets!|
Vault Defer Update!

! For administrative reasons, please mark a "Solution as solved" when the issue is solved !


 


EESignature

Message 5 of 5

AlexFielder
Advisor
Advisor

Here's a usage example from an addin written by myself & @MrSmithtastic:

 

Private Sub m_UserInputEvents_OnActivateCommand(CommandName As String, Context As NameValueMap)
            If Not AddinGlobal.InventorApp.ActiveDocument Is Nothing Then
                If (AddinGlobal.InventorApp.ActiveDocument.DocumentType = DocumentTypeEnum.kDrawingDocumentObject) Then
                    If CommandName = "VaultCheckinTop" Or CommandName = "VaultCheckin" Then
                        DocumentToPulliPropValuesFrom = AddinGlobal.InventorApp.ActiveDocument
                        If iProperties.GetorSetStandardiProperty(AddinGlobal.InventorApp.ActiveDocument, PropertiesForDesignTrackingPropertiesEnum.kDrawingDeferUpdateDesignTrackingProperties, "", "") = False Then
                            WhatToDo = MsgBox("Updates are not Deferred, do you want to Defer them?", vbYesNo, "Deferred Checker")
                            If WhatToDo = vbYes Then
                                AddinGlobal.InventorApp.ActiveDocument.DrawingSettings.DeferUpdates = True
                                myiPropsForm.Label8.ForeColor = Drawing.Color.Red
                                myiPropsForm.Label8.Text = "Drawing Updates Deferred"
                                UpdateStatusBar("Updates are now Deferred")
                                MsgBox("Updates are now Deferred, continue Checkin", vbOKOnly, "Deferred Checker")
                            Else
                                'Do Nothing
                            End If
                        End If
                    End If
                End If
            End If
        End Sub

^ doesn't deal with setting up the Events listener or anything, but if you want to dig into it a little deeper, then the repo is here:

 

https://github.com/AlexFielder/MyFirstInventorAddin