Git Product home page Git Product logo

andorian-hotkeys's Introduction

Make repetitive work awesome!

hot-scripts logo

Automate your computer to save cumulative hours of your life a year, and watch your mundane work do itself.

Autohotkey is a powerful scripting language that sends keystrokes, runs programs and processes information so that you can focus on important things in life.

Batteries are included: these scripts ask for your information and save it to an ini file, so no code editing is required to get running.

Usage

Global Hotkeys

⊞ Win+W List all RMAs in web browser

⊞ Win+M Launch WIP RMA database (automatic login) and optionally opens RMA from highlighted selection

Ctrl+S (Local hotkey: WIP RMA database) Save WIP record

Ctrl+P (Local hotkey: WIP RMA database) Open record in Microsoft Word for printing

⊞ Win+T Open SalesLogix ticket from clipboard or Outlook e-mail title

⊞ Win+O Find sales order from SO number or serial number that is highlighted or copied

⊞ Win+B BOM search from highlighted selection

⊞ Win+S SalesLogix ticket group search

⊞ Win+Z Bugzilla search from highlighted selection

⊞ Win+5 Paste your initials and today's date

⊞ Win+N Launch plain text editor

USA Hotkeys

⊞ Win+P Launch US Sales Plan

⊞ Win+I Fill out BOM descriptions in loan agreement

Ctrl+E (Local hotkey: Outlook) Archive e-mail in shared inbox

Installation

Google Chrome is recommended, since it is used for development and testing. Please report any issues you may encounter with other browsers. Mozilla Firefox works but is not ideal since, unlike Chrome and Explorer, it prompts for Windows credentials when accessing Intranet resources.

  1. Install Autohotkey

  2. Install GitHub for Windows

  3. In "GitHub for Windows", login to your GitHub account (you probably need to signup for a free account first). After login enter your e-mail and name for Git.

  4. Login to your GitHub account on this webpage and clone this repository

  5. Have the script startup automatically in Windows by making a shortcut to main.ahk in your Windows start menu > Startup folder

  6. Create the SLX auto-login shortcut by right-clicking on SalesLogix-Login and pinning it to the Start Menu

Create your own hotkeys

In the same directory as main.ahk, create your ahk file and edit main.ahk to #Include it

Contribute

Code and feature requests welcome.

Emacs users

You can use ahk-mode.el bundled with AutoHotKey. For the lazy here is an implementation of that file's install instructions:

  1. Add this to your emacs init file, like ~/.emacs
(add-to-list 'load-path "C:/Program Files/AutoHotkey/Extras/Editors/Emacs/")
(setq ahk-syntax-directory "C:/Program Files/AutoHotkey/Extras/Editors/Syntax/")
(add-to-list 'auto-mode-alist '("\\.ahk$" . ahk-mode))
(autoload 'ahk-mode "ahk-mode")
  1. Compile ahk-mode.el by opening it in Emacs and in the top toolbar clicking:
Emacs-Lisp > Byte-compile This File

The file is located here

C:/Program Files/AutoHotkey//Extras/Editors/Emacs/ahk-mode.el
  1. Restart Emacs

andorian-hotkeys's People

Contributors

jimbomahoney avatar omsai avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

andorian-hotkeys's Issues

[Fill loan agreement] when processing 2nd item from Word, silently fails to switch back to Word after selecting descriptions in bomreport iframe.

The first item in the Word table works fine, but after successfully looking up the second item and highlighting the description, the hotkey ends prematurely without switching back to Word to paste the description.

Usually this type of breakage indicates a change in how Google Chrome tab indexing operates. If so, this may require changing focus_on_browser_page() in ./lib/common.ahk.

ticket search and contact history search

It's possible to use groups of contact and tickets, and edit conditionals to search notes (which include e-mail history) in the global database.

However it's not convenient to edit the search multiple words, nor even edit the search word in a group since each word needs to be added to a conditional list, with OR or AND between list items.

Thus one would need to:

  1. Automate creating the search groups for contacts and tickets. Save whether this has been done into an INI file.
  2. Create a GUI text box for the user to type their search words. Then this would be converted into group conditionals, and then open the results.

use existing WIP window if open

Using ⊞ Win+M when the WIP is already open, opens the daughter NCP.

Expected behavior:

  1. Copy and check clipboard for valid WIP number
  2. Clear from existing WIP record
  3. If RMA is valid, and open the new WIP record

create function library

Making a library will help later adding SalesLogix hotkeys. It would be nice to roll up browser A_Cursor wait loops, etc into functions.

[RMA lookup] Closes window if "RMA No" field is empty instead of looking up RMA.

Normally if an RMA is already open in WIP and one searches for another RMA, the hotkey sends Esc key to clear the old RMA and type the new one. Unfortunately it does the same thing if there is no RMA, so the Esc key closes the RMA window. This can be fixed by not sending Esc iff the "RMA No" field is empty (or read-only).

corner splash screen should warn user against activity

Scripts have sensitive execution periods, e.g. where they need to have a certain window active to check program activity. It would be good to have a non-modal window off the center of the screen warning to wait till important execution has finished before continuing normal use. It could also be informative as a status screen with "step 1 of 4 blah".

One danger is the script dies or is interrupted and the window is left open- so it should have a close, or "do not show again" INI option.

RMA database can have different "Live Company Menu"

The "standard" menu the RMA database login was coded for is:

+ Demo Company Menu
- Live Company Menu
      RMA Status
      RMA Process
      Daughter NCP
      ...

Two users are missing the entry before RMA Process resulting in Daughter NCP being opened instead.

Workaround:
Change this line in main.ahk:
Send {Down}{Enter}{Down}{Down}{Enter}
to:
Send {Down}{Enter}{Down}{Enter}

But a fix would require finding what populates the Live Company Menu entries: e.g. locale, permissions, etc...

Add serial number search hotkey

Suggested patch from James Wainwright:

"I also find the following useful:

;----------------------------------------------------------------------
; SO from Serial number from clipboard
;----------------------------------------------------------------------
#s::
Run http://intranet2/reports/ViewReport.aspx?ReportPath=I:\Intranet\Reports\Sales+Information\Utilities\Orders+with+serial+no.rpt

WinWait, Report Viewer,,500

if ErrorLevel
{
  return
}
else

{
  WinActivate
  Sleep 1500
  Send {Tab}{Tab}{Tab}%clipboard%{Enter}
  return
}

Feel free to make it more awesome...."

insert e-mail attachments into SalesLogix tickets

Attachments often need to be saved from e-mails into tickets, but this is time consuming.
Below is suggested pseudo code for a new hotkey.
Also, make the key Outlook specific to reduce key pollution.

Sometimes it's necessary to process the attachments (reduce size, discard unnecessary stuff, etc).
In that case it's better to break this into 2 steps-

  1. Create a folder for the ticket and save the file there
  2. Upload folder contents to the ticket

So maybe allow this ability using a GUI with options for:

  • Save attachments to ticket folder
  • Add files to ticket
  • Save attachments to ticket via folder
;----------------------------------------------------------------------
; [Windows Key + a] Add attachments to ticket
;----------------------------------------------------------------------
; Inputs:
; - Ticket number copied (i.e. in clipboard)
; - Have e-mail subject highlighted and thus open in Outlook reading pane
;
; Result:
; - Attachment from e-mail added to ticket
; - List of files added to beginning of Description
;----------------------------------------------------------------------
;#a::
; Create desktop folder named with ticket number
; Save attachments in folder
; Import attachments in SLX
; Get attachment names using cmd /K "C: & cd <path\to\folder> & dir /b"
; List attachment names in SLX descripton
;return

Running Win+? hotkey breaks Alt+X hotkey

Using Alt+X causes the Win+? window to show up instead.
Running Alt+X again then shows error:

Error: The same variable cannot be used for more than one control.  The current thread will exit.
Specifically: vSent
Line#
396: Gui,Add,Radio,vSENT,&Sent E-Mail

WIP record opening can be cleaner

No need to bother with closing and reopening windows since it's possible to use Control* functions in AHK to read values in any field

[Ticket group search] fails when not using Windows 7 Basic theme

Fault seen on Windows 7 Aero. Cause may be due to _highlight_color not matching the theme color in copy_group_adding_conditions(), so this can be profiled easily with AutoIt3 Windows Spy.

Melody also suggested finding the theme in use.

Another approach to fixing this is "calibrating" the _highlight_color by making a selection at a known location and querying the pixel color.

None of the WIP hotkeys work for SK

The hotkeys fail in the following ways:

  1. Win + M opening the WIP fails to enter the username and password.
  2. Win + M searching highlighted RMA with the WIP window open does nothing.
  3. Ctrl + P Printing the WIP report does nothing.

May be related to AHK_L version.

Ctrl + S hotkey to save the WIP report was not tried.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.