Saturday, May 28, 2022

Reflecting on Service

I was US Army Airborne Field Artillery - Target Acquisition. I never was in combat, so I don't think of myself as a veteran, but I do think of myself as a soldier. 

My MOS (17C) was eliminated in the early 90s, by drones. I was a 17C1P X3, for those that really want to know. So, I looked up 13F the closest thing I could come up with. I wasn't surprised what had changed. I was surprised at how similar my old MOS is to what I do for a living now.

I was in a position where the knowledge I had required:

  • being the middleman between major areas: Infantry, Artillery, and other resources. 
  • keeping an eye on the big picture: battlefield awareness
  • directly communicating valuable information to decision makers
  • determining where to put big expensive stuff
The position also was high stakes:
  • very small tolerance for margin of error
  • need for strict adherence to protocols
  • ability to make difficult calls under pressure
The above is strangely similar to the needs of ERP systems. A few word changes like infantry and artillery for HR and finance and you have just about the same upper-level job description.

13F Fire Support Specialist (Forward Observer)

Directs artillery fire. See Army MOS 13F | MOSDb.

17C Target Acquisition Specialist

Used sound to triangulate the location of enemy artillery to provide counterfire information. If you want a better description, please read: Army MOS 17C | MOSDb.

Breaking down my MOS:
17C - Field Artillery Target Acquisition Specialist
1P    - Parachutist
X3   - TACFire


Memorial Day

For all the veterans out there, if you're like me you struggle a little with this day. It's a time we remember our fallen brothers and sisters in arms. For most it's a time of celebration, but we remember the price paid for the freedom they bought for us. It's a strange mix.

I just want to remind you of the Veterans Crisis Line:

  • Call 1-800-273-8255 and press 1. 
  • Text 838255.

https://www.va.gov/HEALTH/NewsFeatures/2015/February/VAs-Veterans-Crisis-Line-Saves-Lives-Every-Day.asp

Wednesday, June 14, 2017

Senior Lawson S3 System Administrator Engineer - ERP Systems

As a Senior Lawson System Administrator you can wear many hats:

  • Systems Administration for each host OS (Windows, AIX, HP-UX, and others)
  • Systems Integrator using Cloverleaf, IBM Transformation Extender, SSIS, or scripting
  • Project Manager
  • Network Administrator
  • Security Administrator
  • Interdepartmental liason

Thursday, October 13, 2016

Cross Platform File Automation

Here are the guidelines I use whenever I have an automated task where the files may end up on an OS other than the one created.


  • Keep the names as short as possible
  • Use YYYYMMDD for dates - this makes things easier to sort later
  • Symbols 
    • I only use the underscore - if any at all
    • Spaces - can interfere with scripting
    • File system deliminator: . / \
    • Punctuation: . , ! ? : ; 
    • Grouping: () | , ' " `
    • Commenting: ! # - < >
    • Math % ^ * - + = /
    • System variables % $
    • Programmatic operators: ` ~ $ & |
    • Special use: @ 
I know there are more examples but I think you get the point. Someone scripts in java, the other in bash or PowerShell - each RegEx can be picky - 

Wednesday, June 04, 2014

Internet Explorer vs. the web...

These are notes on ways to have Internet Explorer display specific sites content as a different version.

So you have IE 11+ and you have some site that 'requires' IE 7. What do you do?
The main methods:

  • GPO
  • meta http-equiv="X-UA-Compatible"

    • Recoding pages
    • Using an appliance to modify the HTML traffic
  • Force compatibility mode
    • GPO
    • Browser settings
    • IIS Settings - if you own the content
  • IE Tools
    • Enterprise Mode, a compatibility mode that runs on Internet Explorer 11 on Windows 8.1 Update and Windows 7 devices, lets websites render using a modified browser configuration that’s designed to emulate Internet Explorer 8, avoiding the common compatibility problems associated with web apps written and tested on older versions of Internet Explorer.

Home vs. Business

Friday, February 28, 2014

Make sure you're clear to change your password

The following script I use to verify that I am not logged in anywhere else before I change my domain password.

@echo off
set me=logon

for /F %%S in (myservers.txt) do (@echo %%S && @query session /SERVER:%%S | find "%me%")

  • Change `me` to your domain logon
  • create myservers.txt with a list of the servers you want to limit your search to, then save it in the same folder as this script.

Cheap Portal Monitor

Below is a script that I use to check that the portals are running and errors are not present. Sometime services lie!

@echo off
cls
SETLOCAL ENABLEDELAYEDEXPANSION ENABLEEXTENSIONS
set pre=http://
set sufix=^.domain^.org/lawson/portal
set lbpsufix=^.domain^.root^.loc/lbp9
set lbisufix=^.domain^.root^.loc:9080/efs/
:: Inteded to have wget installed on host pc
set wgetpath=C:\wget\bin
:: intended to be run from USB drive
set locroot=%~dp0
rem <esc>[<attribute>;<foreground>;<background>m
set yellow=[1;33;40m
set cyan=[1;36;40m
set red=[1;31;40m
set normal=[0;32;40m

goto start

:start
cd %locroot%\scripts\Infor\
@del /Q h*.tmp.txt && @cls
@del /Q index.html.* && @cls
@del /Q out.*txt && @cls
@del /Q final.txt && @cls
@del /Q finalf.txt && @cls
@del /Q SSOServlet@_action* && @cls
@del /Q null && @cls
goto:flow

:flow
for %%M in (server1 server2) do call :verportal %%M
for %%N in (server3 server4) do call :verportal1 %%N
for %%O in (server5 server6) do call :verportal2 %%O
@cls
call :doublecheck
call :display
goto:EOF

:verportal
%wgetpath%\wget %pre%%1%sufix% 1>nul 2>"%1.tmp.txt"
find /c "connected" "%1.tmp.txt" >NULL
if %errorlevel% equ 1 goto notthere
goto:end

:verportal1
%wgetpath%\wget %pre%%1%lbpsufix% 1>nul 2>"%1.tmp.txt"
set result=("type "%1.tmp.txt" | @find /i "connecting" | @find /i "connected"")
find /c "connected" "%1.tmp.txt" >NULL
if %errorlevel% equ 1 goto notthere
goto:end

:verportal2
%wgetpath%\wget %pre%%1%lbisufix% 1>nul 2>"%1.tmp.txt"
set result=("type "%1.tmp.txt" | @find /i "connecting" | @find /i "connected"")
find /c "connected" "%1.tmp.txt" >NULL
if %errorlevel% equ 1 goto notthere
goto:end

:notthere
echo ------- FAILURE reaching page!!!!
goto:end

:doublecheck
echo Checks to see if 200 OK was received ^| 1 = was received
for /r %%B in ("h*.tmp.txt") do (@find /c "200 OK" %%B) >> out.txt
for /r %%C in (out.txt) do (@type out.txt | @findstr /E /R /X ".*1$" >> final.txt)
for /r %%D in (out.txt) do (@type out.txt | @findstr /E /R /X ".*0$" >> finalf.txt)
goto:end

:display
for /F "delims=\ tokens=4,5" %%E in (final.txt) do @echo %cyan% %%E
for /F "delims=\ tokens=4,5" %%F in (finalf.txt) do @echo %red% %%F
goto:end

:end
@echo %normal%

:EOF
endlocal
exit /B
-

Output looks like:

Checks to see if 200 OK was received | 1 = was received
 server1.TMP.TXT: 1
 server2.TMP.TXT: 1
 server3.TMP.TXT: 1
 server4.TMP.TXT: 1
 server5.TMP.TXT: 1
 server6.TMP.TXT: 0

F:\scripts\Infor>

Reflecting on Service

I was US Army Airborne Field Artillery - Target Acquisition. I never was in combat, so I don't think of myself as a veteran, but I do th...