Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
moneyworks:po_authorisation:setup [2012/08/07 20:45] – john | moneyworks:po_authorisation:setup [2012/10/18 22:15] (current) – [Creditor Invoice Authorisation Script] Craig Drown | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== MBC Scripts | + | ===== Setup and Concept notes for the Moneyworks Purchase Order Authorisation scripts |
<note important> | <note important> | ||
The standard Moneyworks functionality does not provide a high level of Purchase Order control, so this additional functionality was developed to provide it.</ | The standard Moneyworks functionality does not provide a high level of Purchase Order control, so this additional functionality was developed to provide it.</ | ||
- | ==== Contacts ==== | ||
- | The following people were involved in specifying and developing the Purchase Order process. | ||
- | Neil Sinclair, Winstantely Kerriege | ||
- | Neil in his role as Limited Statutory Manager (Finance) specified the authorisation process that the school was to follow for Purchase Orders. | + | ==== Credits ==== |
- | Bruce Young, Marlborough Boys College | + | === Concept, design, testing, original documentation === |
- | + | ||
- | Bruce is the finance manager at MBC and involved in the implementation of the process. | + | |
- | Janet Udy, Golden Micro Solutions Ltd | + | * Janet Udy, Golden Micro Solutions Ltd |
- | PO Box 590, Blenheim | + | |
- | T: 03 578 4466 | + | |
- | E: janet@golden.co.nz | + | |
- | Janet is the Moneyworks support consultant and worked with Neil on the process that was required and then specified to the developer what the scripts were required to do. She also tested the scripts and installed them at the school. | + | === Development === |
- | Craig Drown, Sustainable | + | * Mandeswori Maharjan & Craig Drown, |
- | 6a Challenger St, St Hellers, Auckland | + | * Sustainable |
- | T: 09 585 1033 | + | * 14/30 Upper Queen St, Auckland |
- | E: craig@sussol.net | + | |
+ | | ||
- | Craig’s company developed the scripts. | ||
==== Overview of the Purchasing Process ==== | ==== Overview of the Purchasing Process ==== | ||
- | ==== Authorisation Script ==== | ||
- | ==== Installing the Authorisation Script ==== | ||
- | ==== Using the Authorisation Script ==== | ||
- | ==== What the Authorisation Script Does ==== | ||
- | ==== Purchase Order Printing ==== | ||
- | ==== Helper Script ==== | ||
- | ==== Installing the Helper Script ==== | ||
- | ==== Helper Script - Reminder ==== | ||
- | ==== Installing the Helper - Reminder Script ==== | ||
- | ==== Processing Purchase Orders ==== | ||
- | ==== Back Orders ==== | ||
- | ==== Email Script ==== | ||
- | ==== Installing the Email Script ==== | ||
- | ==== Creditor Invoice Authorisation Script ==== | ||
- | ==== Authorising Creditor Invoices ==== | ||
- | ==== Kamar Moneyworks Interface ==== | ||
- | |||
- | |||
- | Contacts | ||
- | |||
- | |||
- | |||
- | Overview of the Purchasing Process | ||
The concept is that purchasing by staff be approved by the Finance department. | The concept is that purchasing by staff be approved by the Finance department. | ||
- | Staff enter Purchase Orders | + | - Staff enter Purchase Orders |
+ | - Finance staff approve these Purchase Orders | ||
+ | - Staff print approved Purchase Orders only and send them to the supplier | ||
+ | - Finance staff receive the creditor invoices and process the Purchase Orders into creditor invoices. | ||
+ | - For each creditor invoice generated, Finance staff highlight it and run the ‘Emailer’ script to send a message to the originator of the Purchase Order asking them to authorise the creditor invoice for payment. | ||
+ | - The Finance staff then check the details of the creditor invoice that has been emailed to them and authorises it using the Command menu option ‘Authorise Invoice’. | ||
+ | - Finance staff pay the authorised invoices. | ||
- | Finance staff approve these Purchase Orders | + | ==== Authorisation Script ==== |
- | Staff print approved | + | This script provides a means of flagging |
- | Finance staff receive | + | === Installing |
- | + | ||
- | For each creditor invoice generated, Finance staff highlight it and run the ‘Emailer’ script to send a message to the originator of the Purchase Order asking them to authorise the creditor invoice for payment. | + | |
- | + | ||
- | The staff then check the details of the creditor invoice that has been emailed to them and authorises it using the Command menu option ‘Authorise Invoice’. | + | |
- | + | ||
- | Finance staff pay the authorised invoices. | + | |
- | + | ||
- | + | ||
- | Authorisation Script | + | |
- | This script provides a means of flagging Purchase Orders as authorised so that the staff who have entered them have approval to go ahead and order the goods. | + | |
- | Installing the Authorisation Script | + | The authorisation script, called ‘Authroise_PO v3’ should be installed in the Scripts folder within the Moneyworks Custom Plug-Ins folder for those users who have authorisation privilege. |
- | The authorisation script, called ‘Authroise_PO v3’ should be installed in the Scripts folder within the Moneyworks Custom Plug-Ins folder for those users who have authorisation privilege | + | |
This script should also be installed for those administration users who are processing Purchase Orders. | This script should also be installed for those administration users who are processing Purchase Orders. | ||
The place to install it for each user is: | The place to install it for each user is: | ||
C: | C: | ||
- | |||
where “User” is the name of the user. | where “User” is the name of the user. | ||
- | |||
Once installed it will appear as the last item on the Command menu for those users who have it installed. | Once installed it will appear as the last item on the Command menu for those users who have it installed. | ||
- | Using the Authorisation Script | + | === Using the Authorisation Script |
To use the Authorisation Script: | To use the Authorisation Script: | ||
- | Highlight the Purchase Order or Orders you want to authorise | + | - Highlight the Purchase Order or Orders you want to authorise |
+ | - Select // | ||
+ | * This will assign the Initials of the authorising user to the the first authorisation field, if the Purchase Order has not yet been authorised. | ||
+ | * If the current user has already authorised a particular PO then a message will be displayed to this effect. | ||
+ | * If a PO was previously authorised by another authoriser and then subsequently modified before the current authoriser tried to authorise it, then the authorisation will be completely cleared. | ||
+ | - Sort on the current sort column by clicking on it twice. | ||
+ | * When a PO is authorised, the authorisors initials are not automatically displayed in the Authorisation columns — you need to refresh the window first. | ||
- | Select ‘Authroise_PO v3’ from the Command menu. | + | === What the Authorisation Script Does === |
- | This will assign the Initials of the authorising user to the the first authorisation field, if the Purchase | + | When the first person authorises a Purchase Order, the authorisation script creates a check sum using the Order quantity, product code, Detail Gross plus the OrderShipped amount. This value is stored in the User Table along with the first Authorisor’s initials. |
- | If the current | + | When the second person authorises a Purchase Order, the script checks the checksum is still the same. |
+ | The stored checksum is used by the Helper script (see below) and when a Purchase Order is printed (see below). | ||
- | If a PO was previously authorised by another authoriser and then subsequently modified before the current authoriser tried to authorise it, then the authorisation will be completely cleared. | + | === Purchase Order Printing === |
- | Sort on the current sort column by clicking on it twice. | + | A special |
- | + | ||
- | When a PO is authorised, the authorisors initials are not automatically displayed in the Authorisation columns — you need to refresh the window first. | + | |
- | + | ||
- | + | ||
- | What the Authorisation Script Does | + | |
- | When the first person authorises a Purchase Order, the authorisation script creates a check sum using the Order quantity, product code, Detail Gross plus the OrderShipped amount. | + | |
- | When the second person authorises a Purchase Order, the script checks the checksum is still the same. If is it, then it stores the second user’s intials in the User Table. | + | |
- | The stored checksum is used by the Helper script (see below) and when a Purchase Order is printed (see below). | + | |
- | + | ||
- | Purchase Order Printing | + | |
- | A special | + | |
When this form is printed, it checks to see if the Purchase Order is fully authorised: | When this form is printed, it checks to see if the Purchase Order is fully authorised: | ||
- | If it is, then it prints ‘Approved’ on the printed Purchase Order | + | * If it is, then it prints ‘Approved’ on the printed Purchase Order |
- | + | | |
- | If it is not, then it prints ‘Not Approved’ and clears any authorisation recorded in the User Table. | + | |
If there is an authorisation stored within the User Table, the script on the form recalculates the checksum and compares it to the stored checksum. | If there is an authorisation stored within the User Table, the script on the form recalculates the checksum and compares it to the stored checksum. | ||
- | Normally, you would expect if the Purchase Order had been modified after it was authorised, then the Helper Script (see below) would have clear the authorisation. | + | Normally, you would expect if the Purchase Order had been modified after it was authorised, then the Helper Script (see below) would have cleared |
- | + | ||
- | + | ||
+ | ==== Helper Script ==== | ||
- | |||
- | Helper Script | ||
Once a Purchase Order has been approved, it is expected that it would not be modified. | Once a Purchase Order has been approved, it is expected that it would not be modified. | ||
- | |||
If the user goes ahead with the changes, then the authorisation is wiped and the Purchase Order will need to be authorised again before it can be printed and sent to the supplier. | If the user goes ahead with the changes, then the authorisation is wiped and the Purchase Order will need to be authorised again before it can be printed and sent to the supplier. | ||
- | |||
This script should be installed for all users who have access to Moneyworks. | This script should be installed for all users who have access to Moneyworks. | ||
+ | * The user won’t be warned if they make changes to a Purchase Order. | ||
+ | * The Purchase Order authorisation will not be wiped so the Purchase Order will still ‘look’ authorised when it is not. | ||
+ | * When the user goes to print the Purchase Order, it will print ‘Not Approved’ and wipe the authorisation at this point. | ||
+ | * Users will be able to use the option ‘Accountants Export’ because the user must have the ‘Export’ privilege in order to use the script. | ||
- | The user won’t be warned | + | < |
- | The Purchase Order authorisation will not be wiped so the Purchase Order will still ‘look’ authorised when it is not. | + | === Installing the Helper Script |
- | + | ||
- | When the user goes to print the Purchase Order, it will print ‘Not Approved’ and wipe the authorisation at this point. | + | |
- | + | ||
- | Users will be able to use the option ‘Accountants Export’ because the user must have the ‘Export’ privilege in order to use the script. | + | |
- | + | ||
- | + | ||
- | Installing the Helper Script | + | |
The following Moneyworks preferences should be set in order for the Helper Script to work correctly: | The following Moneyworks preferences should be set in order for the Helper Script to work correctly: | ||
- | The Order number on the Sequence Nos page of Document Preferences should be set so it cannot be change. | + | - The Order number on the Sequence Nos page of Document Preferences should be set so it cannot be change. |
- | + | | |
- | The helper script relies on having unique Order numbers to identify the Order when checking the Order values against the stored checksum for an authorised Purchase Order. | + | |
- | + | | |
- | On the Data Entry page of Document Preferences, | + | |
- | + | ||
- | This is for the same reason as above. | + | |
- | + | ||
A user must have the following privileges in order for the Helper Script to work correctly: | A user must have the following privileges in order for the Helper Script to work correctly: | ||
- | The user privilege ‘Exporting’ must be turned on | + | - The user privilege ‘Exporting’ must be turned on |
- | + | | |
- | The user privilege ‘Execute External Scripts’ must be turned on | + | |
- | + | ||
- | + | ||
To install the Helper Script: | To install the Helper Script: | ||
- | Install the Helper Script into the Custom Plug-ins folder for each user. | + | * Install the Helper Script into the Custom Plug-ins folder for each user. |
+ | * There are two versions of this script — one for the Mac and one for Windows. | ||
+ | * On Windows this folder can be found here: C: | ||
+ | * On the Mac this folder can be found here: Hard drive name : Users : Username : Library : Application Support : Cognito : Moneyworks Gold : Datacentre : Moneyworks Custom Plug-ins. | ||
+ | Alternatively, | ||
+ | On Windows, you then need to register the script by right clicking on the //Helper script// and selecting // | ||
- | There are two versions of this script — one for the Mac and one for Windows. | + | ==== Helper Script - Reminder ==== |
- | On Windows this folder can be found here: | ||
- | |||
- | C: | ||
- | |||
- | where “User” is the name of the user. | ||
- | |||
- | On the Mac this folder can be found here: | ||
- | |||
- | Hard drive name : Users : Username : Library : Application Support : Cognito : Moneyworks Gold : Datacentre : Moneyworks Custom Plug-ins. | ||
- | |||
- | Alternatively, | ||
- | |||
- | On Windows, you then need to register the script by right clicking on the Helper script and selecting Register. | ||
- | |||
- | |||
- | |||
- | |||
- | Helper Script - Reminder | ||
This helper script is for installation on up to three admin computers. | This helper script is for installation on up to three admin computers. | ||
For this to work correctly a Product record needs to be created with the following information: | For this to work correctly a Product record needs to be created with the following information: | ||
- | code = ~reminder | + | - code = ~reminder |
- | + | | |
- | comment = message to go to user. The invoice number and details will automatically be generated by the script in next line of message. | + | |
- | + | | |
- | custom1 = number of days old before a reminder is sent | + | |
- | + | ||
- | custom2 = number of days to look back (eg 90). Without this, will look back forever, and will be too slow once creditor invoice table grows large | + | |
- | + | ||
- | custom3 = minimum number of days between reminders (to stop three reminders a day if Moneyworks is started 3 times) | + | |
- | + | ||
- | + | ||
- | Installing the Helper - Reminder Script | + | |
+ | === Installing the Helper - Reminder Script === | ||
To install the Helper Script: | To install the Helper Script: | ||
- | Edit the script and enter the Login initials of the three admin staff who are authorised to send the reminder messages. | + | - Edit the script and enter the Login initials of the three admin staff who are authorised to send the reminder messages. |
+ | - Install the Helper Script into the Custom Plug-ins folder for each admin user. | ||
+ | On Windows this folder can be found here: C: | ||
- | Install the Helper Script | + | Alternatively, |
+ | You then need to register the script by right clicking on the Helper script and selecting Register. | ||
- | On Windows this folder can be found here: | + | ==== Processing Purchase Orders ==== |
- | C: | ||
- | |||
- | where “User” is the name of the user. | ||
- | |||
- | Alternatively, | ||
- | |||
- | You then need to register the script by right clicking on the Helper script and selecting Register. | ||
- | |||
- | Processing Purchase Orders | ||
This section describes the general procedures for processing a Purchase Order. | This section describes the general procedures for processing a Purchase Order. | ||
- | The creditor invoice will arrive from the Supplier | + | - The creditor invoice will arrive from the Supplier |
+ | - An admin staff member will find the creditor invoice in Moneyworks | ||
+ | - The admin staff member will highlight the Purchase Order and run the option ‘Authorise_PO v3’ from the Command menu. | ||
+ | * This should only be done if the two authorisation columns are showing the Purchase is authorised. | ||
+ | - If the Purchase Order is no longer authorised, then the admin staff member should contact the Finance Manger. | ||
+ | - If the Purchase Order is authorised and matches the creditor invoice, then it should be processed by clicking on the ‘Grinder’ button. | ||
+ | * A Purchase Order will not always match the creditor invoice exactly as the amounts may vary slightly. | ||
+ | - Finally, email the invoice to the originator of the Purchase Order so they can authorise payment of the invoice. (See the section below for details of how to do this.) | ||
- | An admin staff member | + | === Back Orders === |
+ | A Purchase Order will remain authorised if the items are put on back order provided that the price or quantity does not change. | ||
- | The admin staff member | + | However, it is likely that the price will change when a Purchase Order is partially processed so the Purchase Order will no longer be authorised. |
- | This should only be done if the two authorisation columns are showing the Purchase is authorised. | + | This could cause confusion as to whether |
- | If the Purchase Order is no longer authorised, then the admin staff member should contact | + | It is recommended that procedures are put in place to manage back orders. |
- | If the Purchase Order is authorised and matches | + | Thus, by looking at the initials of the authorisor it should be clear that the PO has been reauthorised because it is on back order. |
+ | ==== Email Script ==== | ||
+ | This script allows admin staff to email the details of a Creditor Invoice to the originator of the Purchase Order. This is so that they can authorise | ||
- | A Purchase Order will not always match the creditor invoice exactly as the amounts may vary slightly. | + | === Installing |
- | + | ||
- | Finally, email the invoice to the originator of the Purchase Order so they can authorise payment of the invoice. | + | |
- | + | ||
- | See the section below for details of how to do this. | + | |
- | + | ||
- | + | ||
- | Back Orders | + | |
- | A Purchase Order will remain authorised if the items are put on back order provided that the price or quantity does not change. | + | |
- | However, it is likely that the price will change when a Purchase Order is partially processed so the Purchase Order will no longer be authorised. | + | |
- | This could cause confusion as to whether a partially processed Purchase Order has been approved or not. | + | |
- | I suggest that procedures are put in place to manage back orders. | + | |
- | Thus, by looking at the initials of the authorisor it should be clear that the PO has been reauthorized because it is on back order. | + | |
- | + | ||
- | Email Script | + | |
- | This script allows admin staff to email the details of a Creditor Invoice to the originator of the Purchase Order. | + | |
- | Installing the Email Script | ||
The first step is to install a program called ‘Blat’ which is necessary for actually sending the email. | The first step is to install a program called ‘Blat’ which is necessary for actually sending the email. | ||
- | Download the Blat program from: | + | - Download the Blat program from: [[http:// |
- | + | | |
- | http:// | + | |
- | + | | |
- | The current version is blat262. | + | |
- | + | | |
- | Decompress the downloaded file and install it on your c drive. | + | |
- | + | | |
- | Find the executable program, blat.exe, and copy it to the top level of your c drive. | + | * fred@somewhere.com is |
- | + | | |
- | From the Start Menu, select ‘All Programs’ | Accessories | Command Prompt. | + | |
- | + | ||
- | Run Blat to install the settings to the registry as follows: | + | |
- | + | ||
- | c:\ blat.exe -install 192.168.1.223 | + | |
- | + | ||
- | where | + | |
- | + | ||
- | 192.168.1.223 is IP address of mail server | + | |
- | + | ||
- | mandeswori@sussol.net is | + | |
- | + | ||
- | username and password are for smtp authenticated server (which yours should be) | + | |
- | + | ||
- | + | ||
- | To test it has been installed correctly run the following from the Command line prompt: | + | |
- | + | ||
- | blat.exe -t janet@golden.co.nz -body “this is the body” | + | |
- | + | ||
- | where janet@golden.co.nz is an email address you want to send a test message to. | + | |
+ | To test that it has been installed correctly, run the following from the Command line prompt: | ||
+ | * blat.exe -t fred@testmail.com -body “this is the body”, where | ||
+ | * fred@testmail.com is an email address you want to send a test message to. (Note - fred@testmail.com is fictitious ;-)) | ||
To install the script: | To install the script: | ||
- | Copy the script called ‘Email.vbs’ to the Scripts folder within the Moneyworks Custom Plug-ins folder for each user that will be using it. | + | * Copy the script called ‘Email.vbs’ to the Scripts folder within the Moneyworks Custom Plug-ins folder for each user that will be using it. |
- | + | | |
- | The location of the Plug-ins folder is as follows: | + | |
- | C: | + | |
- | + | ||
- | where “User” is the name of the user. | + | |
To set up it up for use within Moneyworks: | To set up it up for use within Moneyworks: | ||
- | Create a Name record for each Moneyworks user, using their Initials as the Name Code. | + | - Create a Name record for each Moneyworks user, using their Initials as the Name Code. |
- | + | | |
- | Put their email address in the Contact email addresses on the name record. | + | |
- | + | ||
- | You can put the email address in either or both contact email addresses but it is suggested that one email address would be the staff member who originated the PO and the other could be the Head of Department. | + | |
To use the script: | To use the script: | ||
- | Highlight the Creditor Invoice | + | - Highlight the Creditor Invoice |
+ | - Select Email from the Command menu. | ||
+ | * The script will find the PO by order number and look for the initial of the user who entered it and then email it to the user. | ||
- | Select Email from the Command menu. | + | ==== Creditor Invoice Authorisation Script |
- | + | This script allows staff (originators of Purchase Orders) to authorise payment | |
- | The script will find the PO by order number and look for the initial of the user who entered it and then email it to the user. | + | |
- | + | ||
- | + | ||
- | + | ||
- | Creditor Invoice Authorisation Script | + | |
- | This script allows staff (originators of Purchase Orders) to authorise payment | + | |
To install the script: | To install the script: | ||
- | For Windows users, copy the script, called ‘Authorise Invoice’ to the Scripts folder within the Moneyworks Custom Plug-ins folder of an admin user and then upload it to the Datacentre Server. | + | - For Windows users, copy the script, called ‘Authorise Invoice’ to the Scripts folder within the Moneyworks Custom Plug-ins folder of an admin user and then upload it to the Datacentre Server.It will then be downloaded onto each users computer. |
- | + | | |
- | It will then be downloaded onto each users computer. | + | |
- | + | | |
- | For Mac users, install the script into the Scripts folder on each user’s computer. | + | |
- | + | <note important> | |
- | The location of this folder can be found here: | + | |
- | + | ||
- | Hard drive name : Users : Username : Library : Application Support : Cognito : Moneyworks Gold : Datacentre : Moneyworks Custom Plug-ins. | + | |
- | + | ||
- | where Username is the name of the user. | + | |
- | + | ||
- | The Mac script will need to have a different name to the Windows one for this to work. Otherwise you can just install the appropriate scripts manually onto each usercode without uploading it to the datacentre. | + | |
- | + | ||
- | + | ||
- | + | ||
- | Authorising Creditor Invoices | + | |
- | Select ‘Authorise Invoice’ from the Command menu | + | |
- | + | ||
- | Enter the Invoice number into the Input box. | + | |
- | + | ||
- | The Input box won’t come up as the front window. | + | |
- | + | ||
- | A user can only authorise Invoices for Purchase Orders they’ve entered. | + | |
- | + | ||
- | + | ||
- | To view the Authorisation (for admin users) | + | |
- | Once the Invoice is authorised it will add the user’s intials and date to a user data record. | + | |
- | + | ||
- | Lookup(SequenceNumber," | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | Kamar Moneyworks Interface | + | |
- | The Kamar school management system can export a file of receipts which can be imported into the Moneyworks accounting system. | + | |
- | First install the Moneyworks import map into the Import Maps folder on the machine that will be importing the receipts from Kamar. | + | |
- | The Import Maps folder can be found here: | + | |
- | C: | + | |
- | + | ||
- | where “User” is the name of the user. | + | |
- | + | ||
- | Alternatively, | + | |
- | + | ||
- | + | ||
- | To export the transactions from Kamar: | + | |
- | Use the Transactions Only export by selecting Moneyworks in the Kamar setup. | + | |
- | + | ||
- | Turn off ‘Calculate Account Totals’ | + | |
- | + | ||
- | Enter the Moneyworks bank account code | + | |
- | + | ||
- | You don’t need to enter a control account. | + | |
- | + | ||
- | Once the file has been exported from Kamar, follow these steps: | + | |
- | + | ||
- | Import Transactions from the File menu | + | |
- | + | ||
- | You will be requested to open a file. | + | |
- | + | ||
- | Locate and open the file you’ve exported from Kamar | + | |
- | + | ||
- | The file will be displayed in the Import Field Order window. | + | |
- | + | ||
- | Use the Load button or the Pop Up menu next to it to select the KamarCR import map. | + | |
- | + | ||
- | Click the OK button to start the import. | + | |
- | Assuming there are no errors, | + | === Authorising Creditor Invoices === |
+ | - Select ‘Authorise Invoice’ from the Command menu | ||
+ | - Enter the Invoice number into the Input box. | ||
+ | * The Input box won’t come up as the front window. | ||
+ | * A user can only authorise Invoices for Purchase Orders they’ve entered. | ||
+ | * To view the Authorisation (for admin users) | ||
+ | * Once the Invoice is authorised it will add the user’s intials and date to a user data record. | ||
- | Check and post the cash receipt transaction that is created. |