Tag Archives: misys

A quick Powershell script I hacked together that will enumerate all Active Directory users, and build an XML file for an application I wrote that generates user reports for a specific application.

The output file format is similar to:

<quickreports>
  <report name="Organizational Unit">
  <database name="v001"/>
  <usrlogin name="jdoe01"/>
</report>
<quickreports>
$ErrorActionPreference= 'silentlycontinue'
$arr=@{}

foreach ($usr in Get-ADUser -Filter *  | select samaccountname) {

$user = get-aduser -identity $usr.samaccountname -ErrorAction SilentlyContinue
$userou = (($user.DistinguishedName -split "=",2)[-1].split(",")[1] -split "=",2)[-1]

$key = $userou
$value = $usr.samaccountname

if ($arr.ContainsKey("$userou")) {
$arr["$userou"] += $usr.samaccountname 
} else {
$arr["$userou"] = @()
$arr.add($key,$value)
}

}
$foo = "<?xml version=""1.0"" encoding=""utf-8""?>`r`n"
$foo += "<quickreports>`r`n"

$foo += foreach ($ou in $arr.keys) {

    write-output "  <report name=""$ou"">`r`n"

    foreach ($u in $arr["$ou"]) {
                if ($u.contains("01")) {
                    write-output "<database name=""v001""/>`r`n"
                } elseif ($u.contains("04")) {
                    write-output "<database name=""v004""/>`r`n"
                } else { 
                    write-output "<database name=""""/>`r`n"
                }
        write-output "<usrlogin name=""$u""/>`r`n"
}
    write-output "</report>`r`n"
}

$foo += "</quickreports>"

$foo | out-file quickreport.xml

# for some reason the outputted file was dumping 0x00 into the file.  Eventually
# I'll clean all this up and just write all the attributes and elements from up above
# but now is not the time as this is just a quick and dirty POC

$fn = "quickreport.xml"
$xmlDoc = [system.xml.xmldocument](get-content $fn)

$xmlDoc.save($fn)

Misys Vision Encounter (Superbill) Templates

SQL Query:

select tmpname,tmpdesc from formtmphdr where allow_edit = 'N' and tmptype = 7
tmpname       tmpdesc
CODESCAN1S    MICROSCAN ENCOUNTER 1 (8 LPI - STYLE 2)
CODESCAN3S    MICROSCAN ENCOUNTER 3 (8 LPI - STYLE 2)
ENC09         MEDIC ENCOUNTER FORM #9
ENC09LASER    MEDIC #9 LASER ENCOUNT (60 LPP STYLE 3)
ENC10         MEDIC ENCOUNTER FORM #10
ENC10LABEL    MEDIC LABEL ENCOUNTER FORM #10 (STYLE 3)
ENC10LASER    MEDIC #10 LASER ENCOUNT (60 LPP STYLE 3)
ENC11         MEDIC ENCOUNTER FORM #11
ENC11LASER    MEDIC #11 LASER ENCOUNT (60LPP STYLE 1)
ENCVIS        VISION STANDARD ENCOUNTER
ENCVISLASE    MEDIC VISION LASER ENC (60LPP STYLE 2)
MICROSCAN3    MICROSCAN ENCOUNTER (3RD VERS) 2.14.4   

These are the non-editable templates. You must copy the template (tmpname) to a new template and modify the new template accordingly.

I’ve seen that it takes >1hr to load the FastServices window after clicking on the FastServices button.

Here’s what I did to make this take less than 10 seconds to load. ┬áIt appears as though it does some type of parsing/processing of old log and inbox files.

# cd /Medic/APPS/fastsvc
# ls -l
total 264
drwxr-xr-x 4 dev medgrp 512 Dec 5 15:33 inbox
drwxr-xr-x 2 dev medgrp 512 Dec 5 15:31 logs
drwxrwxrwx 2 dev medgrp 512 Dec 5 15:14 outbox
drwxrwxrwx 2 dev medgrp 512 Dec 5 15:23 tmp

I moved log to logs.org and inbox to inbox.org.

# mv logs logs.org
# mv inbox inbox.org

After that, I created .fast_images directory in the inbox folder and also created .data directory in inbox.

# ls -l inbox
total 16
drwxr-xr-x 2 dev medgrp 512 Dec 5 15:33 .data
drwxr-xr-x 2 dev medgrp 512 Dec 5 15:33 .fast_images

Then, I chown’d the proper permissions.

# chown dev.medgrp inbox
# chown dev.medgrp inbox/.data
# chown dev.medgrp inbox/.fast_images
# chown dev.medgrp logs