ExcelAccountingTool

Excel Accounting Tool (EAT) - User Manual and Instructions

Version - Target: Release - Built on: 6/28/2022 4:56:26 PM - Released on: 6/28/2022 5:57:59 PM

Table of Contents


clapse    expand

collapse A. How to use the document
1. Navigation
2. Search
3. 2 Versions
4. Samples and Figures
5. Version Icons
collapse B. About EAT?
1. What is EAT?
2. System requirements
3. Purposes
4. How it works
5. Benefits
6. License Agreement
collapse C. How to acquire EAT
1. Ownership Time-line
2. Trial Version
3. Product Version
collapse D. Install EAT
1. ZipFile eatpro.zip
2. Unzip 1
3. Unzip 2
4. Progress
5. License file
collapse E. Graphic User Interface (eatui.exe)
1. Purpose
2. Add to Task Bar
collapse F. Work Flow Chart
1. The Chart
collapse G. Create Input Sheets
1. Parameter file
2. Create a Type
3. Create an account
4. Modify an account
5. Copy Account records
6. Add ledger (Single Line Mode)
7. Add ledger (Compact Mode)
8. Repeat Ledgers (What & Why)
9. Repeat Ledgers (Commands)
10. Repeat Ledgers (Where to)
11. Report style templates
12. Report formating commands
13. Join 2 accounts
14. Prepare next month
15. Sample Files
collapse H. Credit Card Accounts
1. CCA General
2. Supported Bank Websites
3. CSV Map Commands
4. CCA Instructions
collapse I. Create Report
1. How to run
2. Files created
3. File History
collapse J. Analyze the Report
1. General
2. Navigation
3. MathMap
4. Accounts and Types
5. Link Dependences
6. Account Pages
7. Subtotal On Group
8. Show Group Chart
9. Accounting Equation
10. Family Checking Account
11. Partner s W2 Chart
collapse K. Update EAT
1. Download zip File
2. Unzip File
3. License File
collapse L. Download Balance Copying Macro
1. Download text File
2. How to install the Macro
3. How to run the Macro
4. The Macro functions
collapse M. Recover License
1. Download the license File
2. Copy the file
3. Executables
collapse N. General Rules
1. Rule 1, Name the sheets
2. Rule 2, Command column A
3. Rule 3, Comments
4. Rule 4, Name objects
5. Rule 5, Money amounts
collapse O. General Concepts
1. 6 Key Fields
2. DateSeqAsKey
3. EAT
4. Error Messages
5. Excel Accounting Tool
6. Compact Mode
7. IDD
8. IFP
9. LBK
10. Ledger Transaction
11. LGH
12. Link
13. LNK
14. Loop Disaster
15. Marker
16. MathCalculation
17. PREV
18. Reserved Words
19. Standard Key Mode
20. Working Directory or IFP
collapse P. Back up
1. Purpose
2. Backup a Must
3. How to
4. Method
collapse Q. History of Changes
1. Table of Changes

Presentation of Contents





How to use the document

Navigation

This document is well structured and easy to navigate through. Please navigate up and down through left panel Tabel of Contents.


Search

hit both 'Ctrl' + 'f', and type in the word and hit 'Enter' to search for. hit 'F3' to search for next occurrence.


2 Versions

There are 2 of these documents. The contents are the same. The only discrepancy is that one's Table of Contents panel can clapse and expand again, while the other's can't. It is up to you which one to use.


Samples and Figures

Samples and figures provided in this document are not necessarily coherently in binding in design. It is up to the user to make his or her 'story' complete by applying the principles.


Version Icons

Icons like these     ... indicate the associated section is a new or revised section with a new version number.





About EAT?

What is EAT?

EAT is a software tool. It was built to run on Windows Command Line Prompt. It can also be managed at Eat Manager. It takes input Excel file(s) and produces an output Excel file, while the Excel Sheets are industrial standard and the most popular software tool in data processing worldwide. The tool is very convenient and versatile.


System requirements

It requires :

  1. a Windows 7, 8, 10 or 11 OS system
  2. a Windows Microsoft.NET Framework 4.6.1
  3. an Internet browser
  4. a Microsoft Office Excel program, Google Sheets On-line or other equivalents
  5. a license from Teknewell


Purposes

The output file contains accounting reports of financial accounts primary and summary for families and organizations.


How it works

A family member or company employees add basic account ledger records. These records are basic financial records and are minimum in number and the least time consuming. Once the ledger Excel files are collected at the directories defined in parameter file, the Eat Manager can run EAT command line tool and produce the report Excel file flashing easy.


Benefits

  1. EAT is a economic, cost-effective to own and convenient and safe to operate. Once EAT is installed and a accounting model is configured for business, there is no need to change the model often. The model is also easy to adapt if such a need arises. The only task requiring a user to take routinely is to enter ledger transactions according to business activities and create reports for analysis of account health (audit) and purposes.
  2. No fancy installation process to run and no host PC environmental variables to set up. Just unzip the downloaded zip file to be ready for production.
  3. EAT Tool makes family and company financial data available right away for college financial aid or other applications.
  4. EAT Tool allows a parent or a manager forecast or predict next month's account balances by utilizing previous month's average data, pattern and unusual transactions.
  5. By changing credit card's due date to 7th of each month and setting up auto payment on statement balance, you basically are left nothing to do except making checking account fund available for next month by transferring fund from savings to checking on 5th of each month right before the due date, and except downloading CSV statement files and pulling 2 or 3 amounts from banks and updating the ledger records and in the meantime auditing and monitoring the account's health.
  6. This bill-pay activity only happens once in 1 day of a month and saves you a lot of time and allows you to attend to other family activities. This EAT Tool does not electronically and automatically pull the data from banks. You must do the small amount of work to see if your accounts match up your bank accounts. Knowing your accounts are healthy makes you sleep tight at night.
  7. EAT tool is for managers to create financial reports of all accounts. One license is good for one manager of an organization unless there is a need to divide business to acquire multiple licenses.
  8. Multiple Excel files enable company to have multiple employees working from different departments to contribute adding ledger records.
  9. Eat does not transmit user accounting data across the Internet. So it is safe to operate and user financial data is by no means to be leaked away to create security worries. Eat may use Internet to verify license validity though.


License Agreement

Users should have at least once read the User Purchase and License Agreement at time of using the Trial version. Subsequent decision to purchase the software indicates user agrees without preservation the provisions set forth in the document of User Purchase and License Agreement.

Here you can access User Purchase and License Agreement





How to acquire EAT

Ownership Time-line


Trial Version

Goto www.ExcelAccountingToolo.com\downloadmodel03/Create to download a trial version. The trial version only lasts for 1 months. Follow on-screen instructions, and you should have downloaded the file 'eatpro.zip'.


Product Version

If you felt EAT is a useful tool and can help you manage your family's or company's financial accounts, and decided to use, then goto www.ExcelAccountingToolo.com\PurchaseProduct/CreatePP02 to purchase a license.





Install EAT

ZipFile eatpro.zip

Look for the zip file. Normally the downloaded zip file should have gone to directory Downloads. Open the Windows File Explorer, click on Downloads, you should see the zip file eatpro.zip


Unzip 1

Right-click on eatpro.zip, then click on 'Extract All...'. Refer to following image.


Unzip 2

On the dialog box, provide folder name as 'c:\companyName\eat'. If your company name is AutoShop and the disk is e:, then use 'e:\Autoshop\eat'. If your family name is Kenny and the disk is c:, then use 'c:\kenny\eat'. 'c:' is the Installation Disk Drive (IDD) and This path is the installation full path (IFP) of Eat software. Lastly click the bottom right button 'Extract'


Progress

Wait for 'Extract' to finish


License file

Copy 'license.eat' file downloaded to the Installation Disk Drive (IDD)





Graphic User Interface (eatui.exe)

Purpose

This newly added program eatui.exe encompasses all functionalities of the tool. Because it is a Windows Form program, it is easy and direct to carry out tasks important to businesses. It runs on top of the command line console environment. it serves as a overall manager for user. It is and was developed at a later stage. We recommend user to use the program often for all purposes. It is also straight forward or self explanatory to navigate around the interfaces. Here we will not provide more details of each functions.


Add to Task Bar

Wouldn't it be easier each time a user invokes this program from a convenient location like the Windows Task Bar? Here is how to add it in Windows 8.1.

  1. open Windows Explorer, locate to the tool's directory.
  2. right click on EatUi.
  3. click on 'Pin to TaskBar'.
  4. Now you can see an EAT tool icon is added to the task bar.
  5. Refer to the screen shot above.





Work Flow Chart

The Chart

Follow the below work-flow chart which resembles a family monthly financial management activities.





Create Input Sheets

Parameter file

The EAT tool scans for input files in the directories specified in the parameter file. User can also set up other parameters as explained below.

  1. The parameter file is in Excel format with extension 'xlsx' and the file must be passed as the first and only parameter to the tool executable 'eat.exe'. The 'ep.bat' command file shows an example. Modify it to use your file name.
  2. The parameter file sheets follow the same rules as the input files, where the sheet name is prefixed with 'Sheet'.
  3. Use 'Scan' command to specify a directory at cell B. Multiple 'Scan' commands define multiple directories.
  4. User can use directories from Microsoft OneDrive or Google Drive where user can enter data on their mobile phone APPS to record data instantaneously.
  5. use 'setDebugMode' command to set 'Debug Mode' 'on' or 'off'. The cell B accepts 'yes' for on and 'no' for off.
  6. use 'createOneBook' command to create a OneBook. If the flag is yes, the manual input accounts and data will integrated into an OneBook Excel book.
    set 'Create OneBook' 'on' or 'off'. The cell B accepts 'yes' or 'no' to indicate whether to create a OneBook at all. The cell C accepts 'yes' or 'no' to indicate whether to create a OneBook with input data.
  7. use 'ExternalFileMapFile' to define the CSV map file at cell C and disable the flag with 'no' at cell B or 'yes' otherwise.
  8. use 'useStyleTemplates' to define the style template file at cell C and disable the flag with 'no' at cell B or 'yes' otherwise.
  9. use 'cutOffDate' to define which date as a cut off date to write previous balance value for the command setInitValue. cell B is for month, cell C for day, and cell D for year.
  10. use 'numberOfFilesToKeep' to define how many files to keep when user try to delete historical data files. The default minimum number of files to keep is 10.


Create a Type

A Type is defined by specifying field names and common features like hiding a column, positioning a column or a column calculation. Once a Type is defined, an account in step 2 will derive from it.

A B C D E F G H .......
type PayCheck CheckNumber Plus Minus Net|c3=Plus-Minus Balance|c6=PREV+Net Note|h=yes ......
type Loan BankName Plus Minus Net|c3=Plus-Minus Balance|c6=PREV+Net Description|i=1 ......
type Loan BankName Plus Minus Net|c3=Plus-Minus GroupBalance|g6=PREV+Net Description|i=1 ......
figure 2520

Here in figure 2520, Column A is command 'type'. Column B are the new types. From column C are the new field names.

Following common features are defined:
  1. In 'Balance|c6=PREV+Net', the round left bracket '(' serves as separator of strings. first string is the field name 'Balance', second string is 'c6=PREV+Net'. The second string 'c6=PREV+Net' means this field is equal to the sum of the previous value of the same field and the value of field 'Net', and the calculation takes place at the step 6. Currently the arithmetic calculation only involves the 4 basic operators, + 1 X and /. The char 'c' is reserved to mark the calculation, the word 'PREV' is reserved to mark the previous value of the same field, the word 'Net' is another user defined field name, the number 6 is a calculation step. Having understood this string, you can as well describe the string 'Net|c3=Plus-Minus' in the figure 2520.
  2. In 'Note|h=yes', the round left bracket '(' serves as separator of strings. first string is the field name 'Note', second string is 'h=yes'. The second string 'h=yes' means this field is to be hidden in resulting report. Use 'h=no' to do the opposite.
  3. In 'Description|i=1', the round left bracket '(' serves as separator of strings. first string is the field name 'Description', second string is 'i=1'. The second string 'i=1' means this field is to be shown in position 1 relatively. Usually the fields are shown in the report in the order in which they are defined including 6 standard key fields and after the hidden fields are removed. The algorithm is A. assign natural order numbers. B. assign specified order numbers. C. remove hidden fields. The natural order is as following:
  4. In 'GroupBalance|g6=PREV+Net', the formula will just act as 'c6=PREV+Net' except that the GroupBalance will start from 0.0 when it arrives on a different group as the record key based on which the transactions were sorted.
  5. The bracket '(' and ')' are not allowed in the calculation formula. For example following is not allowed, 'Balance|c6=(PREV+Plus)*Rate' since the left bracket '(' is used as a separator anyway.


0 1 2 3 4 5 6 7 8 9 10 11 .......
KeyField DateSeqAsKey Description Status Year Month Date SeqNumber Marker ......
figure 2530

'KeyField', 'DateSeqAsKey', 'YEAR', 'MONTH', 'DATE', 'SEQNUMBER', 'Marker', 'Description' and 'Status' are the reserved field names. If they are not defined by User, they will be added automatically with fields 'YEAR', 'MONTH', 'DATE' and 'SEQNUMBER' set to 'hidden'.


Create an account

Once a Type is defined in step 1, create an account by using that Type. An account definition does not define columns itself at all.

A B C D
account JohnPilotInvest PayCheck 1
account AnneHighSchool PayCheck 2
account KateNYAU Loan 3
account ToyotaLoan Loan 4
figure 2550

Here in figure 2550, Column A is command 'account'. Column B are the new account names. Column C are the types defined in step 1. Column D are integer numbers that define the order in which the account sheets will be presented in the report.


Modify an account

Once an account was created in step 2, use following 4 commands to modify account attributes. These commands only affect the accounts locally.

A B C D E
setKeyField AnneHighSchool CheckNumber
setKeyField AnneHighSchool Bank|Account|CheckNumber
setInitValue KateNYAU Balance 2050.40
hideTheField KateNYAU Notes yes
changeOrderIndex ToyotaLoan Notes 3
discardRowWhen ToyotaLoan Net equal 0.0
figure 2555

Here in figure 2555, Column A is command names. Column B are the account names. Column C are field names. Column D are the modifying values.
Command 'setKeyField' sets the user key field to 'CheckNumber' for account 'AnneHighSchool', hence ignoring the standard key model.
Command 'setKeyField' sets the multiple user key fields to 'Bank|Account|CheckNumber' separated by pipe '|' for account 'AnneHighSchool', hence ignoring the standard key model.
Command 'setInitValue' sets the field 'Balance' to its initial value '2050.40' for account 'KateNYAU'. Another way to do is to add a ledger transaction with ancient year value like '1777' in field 'Year'.
Command 'hideTheField' sets the flag of whether to hide the field 'Notes' in account 'KateNYAU' in final report. 'yes' is to hide , while 'no' is to show.
Command 'changeOrderIndex' sets the relative position of the field 'Notes' in the account 'ToyotaLoan' in final report. Search 'i=1' attribute in section 'Step 1 Create a Type' for more.
Command 'discardRowWhen' is to remove a row in the account 'ToyotaLoan' where the field Net value is 'equal' '0.0'. 3 calculating operators are available, 'less', 'greater' and 'equal'.


Copy Account records

Once accounts were created in step 2, use following 2 commands to copy records from 1 account to another. In this way, user can duplicate an account and then present it in different way, for example, sorting and grouping records.

A B C D E F
CopyAccount Execution Order Number AccountFrom AccountTo
CopyAccountOnIncFilter Execution Order Number AccountFrom AccountTo ColumnName Value1
CopyAccountOnIncFilter Execution Order Number AccountFrom AccountTo ColumnNameToInclude Value1|Value2|Value3
CopyAccountOnExcFilter Execution Order Number AccountFrom AccountTo ColumnName Value1
CopyAccountOnExcFilter Execution Order Number AccountFrom AccountTo ColumnNameToExclude Value1|Value2|Value3
figure 2556

Here in figure 2556, Column A is command names. Column B is the Execution Order Number' field which serves as an order in which the commands are executed. Column C is the account name. Column D is the account name. Column E is a field name. Column F are the filtering values separated by pipe '|'.
Command 'CopyAccount' copy all records from 'AccountFrom' to 'AccountTo'.
Command 'CopyAccountOnIncFilter' copy records that their values in column of 'ColumnNameToInclude' match any of the values in 'Value1|Value2|Value3' from 'AccountFrom' to 'AccountTo'.
Command 'CopyAccountOnExcFilter' copy records excluding those records that their values in column of 'ColumnNameToExclude' match any of the values in 'Value1|Value2|Value3' from 'AccountFrom' to 'AccountTo'.
CopyAccountOnIncFilter and CopyAccountOnExcFilter should be used mutually exclusive in practical reason. User is free to copy records from any account to any other account, and even from the newly copied account.


Add ledger (Single Line Mode)

In this Single Line Mode, users are ready to enter ledger transactions. Users must provide keys for each ledger transaction whether it is a standard key or a user defined key.

A B C D E F G H I J K L M N O P .......
add AnneHighSchool Year 2020 Month 10 Date 12 SeqNumber 0024 Credit Debit 47.07 Description Field trip to DC ......
add KateNYAU MeetingID 1234523456 Plus 9.00 Minus Description Meeting with ABC Investment ......
figure 2558

Here in figure 2558, Column A is command name 'add'. Column B are the account names. From column C are pairs of field name and its value. First of the pair is the field name and second the value. A value cell can be left blank. In the figure 2558, 2 samples are listed.
Sample 1 is for account 'AnneHighSchool'. It is likely that it uses the standard key model because it provides the 4 key field values which are 2020, 10, 12 and 0024. It also provides the field 'Debit' value 47.07, and the description of what it is about this transaction in field 'Description'. The field name 'Credit' and 'Debit' are not in line with the concepts taught in college Accounting class. It is up to the user how to interpret their meanings.
Sample 2 is for account 'KateNYAU'. It is likely that it uses the user defined key model because it does not provides the 4 key field values. The key field is defined by command 'setKeyField' described in section 'Modify an account' in the document. It provides the field 'MeetingID' value 1234523456, 'Plus' 9.00, and the description of what it is about in field 'Description'.
Search 'Ledger Transaction' for more .


Add ledger (Compact Mode)

In this Compact Mode, user specify the header at top of sheet or above the rows on which user enter the values of each fields provided the field name in header and the value are on the same column. Only 1 AddHeader command is enough for the account and its method. If user need another method to enter data, use another 'AddHeader' command with a different method name. User can use VirtualHeader instead of AddHeader right above the data rows as guidance since only one AddHeader is needed for 1 account and 1 method.

A B C D E F G H I J K L M N O P .......
AddHeader AnneHighSchool Way01 Year Month Date SeqNumber Credit Debit Description ......
......
VirtualHeader AnneHighSchool Way01 Year Month Date SeqNumber Credit Debit Description ......
AddRecord AnneHighSchool Way01 2020 2 12 100 55.5 DC Trip ......
AddRecord AnneHighSchool Way01 2020 2 14 101 12.5 New York Food ......
figure 2559

Here in figure 2559, Column A is command name 'AddHeader', 'VirtualHeader' or 'AddRecord'. Column B is for the account names. 'VirtualHeader' row only serves as a guidance row. < br /> Column C is for a Method Name of user choice, and user can have multiple ways or formats to enter data into the same account. From column D, each column holds a value that matches the field name in header. The 2 types of records are said to matching each other when column B and C are matching , meaning the account name and Method Name are the same.


Repeat Ledgers (What & Why)

User has each month, for example, utility bills like Electricity and Gas, and enter them into Electricity and Gas accounts with different month and amount. They are also entered into Checking account and these commands use Link feature and link the values from Electricity and Gas accounts. These commands can be made the exact same so that they can be repeated each month (the Link feature is only applied locally within the same sheet).


Repeat Ledgers (Commands)

A B C D E F G H I J K L M N O P .......
Repeat Checking Year link Month Date SeqNumber 41 Credit Debit LNK4|Gas|Minus Description gas bill ......
Repeat Checking Year link Month Date SeqNumber 42 Credit Debit LNK4|Electricity|Minus Description electricity bill ......
figure 2558
A B C D E F G H I J K L M N O P .......
AddHeader Checking Way01 Year Month Date SeqNumber Credit Debit Description ......
......
VirtualHeader Checking Way01 Year Month Date SeqNumber Credit Debit Description ......
RepeatRecord Checking Way01 link 40 LNK4|Gas|Minus DC Trip ......
RepeatRecord Checking Way01 link 41 LNK4|Electricity|Minus DC Trip ......
figure 2559
Here 2 commands are introduced to repeat the transactions. The first is 'Repeat', the other is 'RepeatRecord'. Above are the examples. The rows for these 2 commands should be placed in a sheet named in pattern Sheet*.


Repeat Ledgers (Where to)

The rows for the command 'Repeat' and 'RepeatRecord' are duplicated, where to? The tool will duplicate them to sheets named in pattern Repeat*. So user should name the sheets in this pattern if user expect the Repeat commands are present in them. User here basically created a model that can be repeated for each month and month after month, saving time and easy to adapt.


Report style templates

User can provide a template file for the reports. The template file contains sheets named after the sheet names in the report. Usually the sheet names in the report are the account names. The sheets in the template file combined with the report data, along with other formating commands, form new reports with formats and styles. User can only provide one template file at a time.

A B C D E .......
useStyleTemplates data/templates.xlsx ......
figure 2560
Here in figure 2560, Column A is command name 'useStyleTemplates'. Column B is the Excel template file name in which the template sheets are included.

In command 'GroupSubtotalForChart's result, there are a title line and a field title line. These data cells are randomly appended at the bottom of the account, and can't be styled at the exact spots. These 2 line styles can be defined in this 'Template File' in cell [1,27] and [1,28]. The cell [1,27] defines the 'Title' style and The cell [1,28] defines the 'Field Title' styles. After applications, these 2 cells will be cleared.


Report formating commands

These other formating commands allow user to format the reports.

A B C D E .......
startingColumnOfContent AccountName 3 ......
startingRowOfContent AccountName 5 ......
hideHeader AccountName yes/no ......
writeNavigationLinks AccountName yes/no 20 7 ......
writeNameRow AccountName yes/no 3 ......
writeIndexRow AccountName yes/no 3 ......
writeInitValueRow AccountName yes/no 3 ......
writeNumberRow AccountName yes/no 3 ......
writeNavigationColumn AccountName yes/no ......
figure 2561
Here in figure 2561,
  1. Column A has the command name 'startingColumnOfContent'. Column B is the account name for which the parameter is to be applied. Column C is the integer value that defined the column at this integer serves as the first column on the left.
  2. Column A has the command name 'startingRowOfContent'. Column B is the account name for which the parameter is to be applied. Column C is the integer value that defined the row at this integer serves as the first row on top.
  3. Column A has the command name 'hideHeader'. This command allows user to clear default header and column navigating links. Column B is the account name for which the parameter is to be applied. Column C is either 'yes' or 'no' to allow user a further option to enable or not.
  4. Column A has the command name 'writeNavigationLinks'. This command allows user to define writing a new link column. Column B is the account name for which the parameter is to be applied. Column C is either 'yes' or 'no' to allow user a further option to enable or not. Column D is the integer value for number of lines to cycle a new link. Column E is the integer value to a column to write the links on.
  5. Column A has the command name 'writeNameRow'. Column B is the account name for which the parameter is to be applied. Column C is either 'yes' or 'no' to allow user a further option to enable or not. Column D is the integer value to indicate the row to write on.
  6. Column A has the command name 'writeIndexRow'. Column B is the account name for which the parameter is to be applied. Column C is either 'yes' or 'no' to allow user a further option to enable or not. Column D is the integer value to indicate the row to write on.
  7. Column A has the command name 'writeInitValueRow'. Column B is the account name for which the parameter is to be applied. Column C is either 'yes' or 'no' to allow user a further option to enable or not. Column D is the integer value to indicate the row to write on.
  8. Column A has the command name 'writeNumberRow'. Column B is the account name for which the parameter is to be applied. Column C is either 'yes' or 'no' to allow user a further option to enable or not. Column D is the integer value to indicate the row to write on.
  9. Column A has the command name 'writeNavigationColumn'. Column B is the account name for which the parameter is to be applied. Column C is either 'yes' or 'no' to allow user a further option to write navigation links of all accounts in first column of the account sheet. Column D and C are not used.


Join 2 accounts

Command Syntax:

There are times when it is useful to join 2 accounts into a third account by a specified key. Here is the command and its syntax:

Here column A is the command 'join'. column B is the execution order number. column C is the name of first account. column D is the name of second account. column E is the name of the third joined account. column F is the key consisting of the field names separated by pipe '|'. column G is the joining method explained below. column H is the special treatment of certain fields, also explained below.
The third joined account has to be defined as usual as all accounts are defined all along within the document, meaning the joined account will not be created on the fly by using field names in the 2 accounts being joined, even though it is feasible.

Joining Method:

There are 3 flags separated by pipe '|', they are 'mine', 'mm or m1 or 1m' and 'yours'. These 3 flags can be selected in combination either just 1 or 2 or all of them. The word 'mm', 'm1' or '1m' can only be selected exclusively, meaning just one can be selected.
   The word 'mine' and 'yours' are used as if the user owns the first account and he is trying to join his account to another person's account as second account.
   The word 'mine' indicates the records are only present within my account (the first account), and are included, if 'mine' is specified, in the join into the joined account.
   The word 'yours' indicates the records are NOT present within my account (the first account), and are included, if 'yours' is specified, in the join into the joined account.
   The word 'mm' indicates the records are present within both accounts, and are joined, if 'mm' is specified, into the joined account by matching the key as many to many. For example, if there are 3 records of key A in first account and there are 2 records of key A in second account, the joined account will have 6 records as the result of matching the key A cross.
   The word 'm1' indicates the records are present within both accounts, and are joined, if 'm1' is specified, into the joined account by matching the key as many to 1. For example, if there are 3 records of key A in first account and there are 2 records of key A in second account, the joined account will have 3 records as the result of matching the key A 3 to 1, and the second key A in second account is abandoned.
   The word '1m' indicates the records are present within both accounts, and are joined, if '1m' is specified, into the joined account by matching the key as 1 to many. For example, if there are 3 records of key A in first account and there are 2 records of key A in second account, the joined account will have 3 records as the result of matching the key A 1 to 2, and the second and third key A in first account are abandoned.
   please refer following chart.

Special Treatment:

In the column H of the 'join' command, the special treatment is specified. User can leave it blank or specify in the format 'AccountName|SourceFieldName|TargetFieldName' or 'AccountName|SourceFieldName|none' where the word 'none' indicates that the field is thrown away. User can also specify multiple such 3-string commands one after another separated by the number sign '#'.
Depending on Joining Method, when moving the field data from source accounts to target account, following logic is in action:
   1. if the field is defined as 2nd name in column H, and the 3rd name is 'none', then the field data is abandoned. This is useful when a field is in both source accounts and user only needs one of them.
   2. if the field is defined as 2nd name in column H, and the 3rd name is a target field name, then move the field data to the target field. This is useful when a field is in both source accounts and user don't want to concatenate them, but place them next to each other, and further form a composite field.
   3. if the field is found in target account, concatenate the field data to the target field.
   4. In all other cases, the field data is abandoned.
   please refer following chart which gives few cases of examples.


Prepare next month

User makes bill payments and balances Checking and Savings accounts monthly. Once successful, he can then move on to next month. The next month input sheet will hold the same pattern as the previous month except following 3 items.
1. clear Status cells.
2. change Month number.
3. move current balances to previous balances, which facilitate sheet formula calculations.
To do these works, user can use the command 'prepareSheet'. User can copy the following box text, paste to the input sheet and modify to fit user's purposes. And for months further after next month simply change the 2 names in column 2 and 3.

Column 1 is the command name. Column 2 is the previous month sheet name to copy from. Column 3 is the new month sheet name. Cloumn 4 are the command names separated by '|'. The rows leading by one of the these names will be revised. Column 5 and beyond are pairs of destination and source cells.
Each cell string for column 5 and beyond contains 2 fields separated by '|'. The first of the pair is for destination. Its first field can be 'column' or 'field'. If it is 'column', the second field will be treated as column letter, like F is F column. If it is 'field', the second field will be treated as an account field name , which is associated with the command 'Add' and 'AddRecord'.
The second of the pair is for source cell. Its first field can be 'value', 'fieldFormula' or 'fieldValue'. If it is 'value', the second field will be treated as a straight value except 'empty' which will be treated as nothing. If it is 'fieldValue', the second field will be treated as an account field name, which is associated with the command 'Add' and 'AddRecord'. The value from this field will be set to the destination cell. If it is 'fieldFormula', everything is the same as 'fieldValue' except copying the cell formula instead of value.


Sample Files

EAT comes with 2 sample files, one for family , another for business (double entry bookkeeping). The family one is disabled by placing a char 'x' in front of the file name. User can do so to the business one as well or enable one by removing the leading char 'x'. User can start a new one based on any one of the sample files.





Credit Card Accounts

CCA General

Every person has a number of credit cards, and each bank of the credit cards provides a web site for customers to establish an on-line account, then customers can login to the accounts, and view the monthly statements on-line, users can also have an option to download the statements to their own computers. In order for this EAT tool to extract the credit card transactions from the statements, user has to download the statements to the sub-directory 'bank' under the tool's Installation Full Path.


Supported Bank Websites


Card Name Bank Name Web Site Account Prefix File Filter
Costco citi citi.com Citi citi*.csv
N/A Chase chase.com Chase chase*.csv
TJX Synchrony tjx.syf.com Tjx tjx*.csv
Homedepot N/A homedepot.com Homedepot homedepot*.csv
Lowes N/A https://www.lowes.com/u/login Lowes lowes*.csv
Macys N/A https://www.macys.com/account/signin Macy macy*.csv
N/A CapitalOne CapitalOne.com Capital Capital*.csv
Checking Bank of America bankofamerica.com BaChecking BaChecking*.csv
Savings Bank of America bankofamerica.com BaSavings BaSavings*.csv
Home Equity Bank of America bankofamerica.com BaEqualty BaEqualty*.csv
US Bank US Bank https://onlinebanking.usbank.com/ UsBank UsBank*.csv
figure 3571


CSV Map Commands





CCA Instructions


Step What and how to do
CSV Map file A CSV map file must be present to extract CSV transactions from CSV statement files. User must use command 'ExternalFileMapFile data\csvmaps.xlsx' to define the map file. Each sheet in map file represents a statement file. The sheet name must follow the pattern [type]-[bank], where [type] is one of the following, 'text' and 'csv', and [bank] is the prefix of a bank name and also the prefix for the CSV file name. For example, 'csv-chase' indicates processing files with extension 'csv' and with prefix 'chase' to lead the file names from bank 'Chase'.
DownloadDownload current month statement and save it to directory 'bank' in the filter pattern listed above. We recommend user save file in pattern 'Prefix-year-month.csv', for example, 'Chase-2021-09.csv'. If your bank or card is not listed, contact us. We will add your card to support you. We designed the CSV map file to support a variety of different bank statement files.
Data types In each pdf statement, there are 2 types of data, one is the summary data, the other transactional data. But in CSV statement, only transactional data plus field headers are available. We are no longer support pdf file.
Critical fieldsThe combination of the Last 4 digits of an account number and Billing Period of a statement uniquely identify a statement.
Accounts created 1 or 2 accounts will be created.
First is the summary account, second is the transaction account. But depending on the setup, maybe only one account is created.
Command 'parameter'
  1. SummaryAccountName defines the summary account name in column C.
  2. TransactionType defines the transactional account name in column C and the account fields in columns that follow. Use as place holder to import field names from the CSV file.
  3. SetInitValue defines the account initial balance value. Use as a place holder in column C for account name. In column D is the field name, in column E is the value.
  4. AddField defines an additional field for the summary account in column C.
  5. FormatDetail defines field data details in format. The detail is in column C. The detail string has data definitions separated by '|'.
    field 0=Date separator char;
    field 1=how many fields in Date;
    field 2=the year index in Date, for example, '2022-03-12' will be -|3|0);
    field 3=the position of date field in transaction;
    field 4=chars to be removed from leading position;
    field 5=chars to be removed from tailing position;
    field 6=field separator, tab = tab char, default is comma ',' ;
    field 7=char to char replace at leading position;
    field 8=char to char replace at tailing position
    Example for the command above (the red square is the char Tab defined in field 6):
  6. addHeaderFile defines a header file. Some CSV file is without a header line. User can define a new file containing a new header line.
  7. replaceHeaderFile defines a header file. This new file can replace the existing header line in the CSV file.
  8. Beginning defines a line in the CSV file, from which the matching algorithm starts to verify. 'StartAtTop' is a reserved word indicating the algorithm starts at very beginning.
  9. Ending defines a line in the CSV file, before which the matching algorithm ends. 'EndAtBottom' is a reserved word indicating the algorithm ends at very end.
Command 'field' 'field' defines meta-data to extract field names and values at summary level.
  1. Last4OrAccountNumber defines where to extract the last 4 digits of the account number. Since the CSV file does not have the account number , user has to use one of the header field name which may just have letters as last 4. Or user can create user defined header file to replace the bank supplied header fields.
  2. BillingPeriod defines where to get the billing period phrase in format like, for example, '11/10/2021-12/10/2021' .
'field' extract meta-data
  1. Key 1 match: defines how to match a line using the key 1 and attributes.
  2. Key 2 match: defines how to additionally match a line using the key 2 and attributes.
  3. Which: defines which occurrence it is.
  4. Value: defines where to pick up the value.
Command 'update' and 'updateTransaction' 'update' and 'updateTransaction' defines a logic to update a field value to another account. The difference between these 2 commands is in the source records. One is from the summary data, while 'updateTransaction' is from the transaction data.
The command is organized in pairs.
  1. First pair: column A is for the command name. column B is for the target account name.
  2. Second pair: column C is for the reserved field name 'UpdateCondition' which defines the logic to qualify a row to be selected. column D defines the condition. If the condition is true, a new record will be created for the target account with values imported from the source.
  3. The condition is 1 or more field name and value pairs. The name and value are delimited by pipe '|' and the pairs are delimited by Caret '^'.
  4. The remaining pairs: From column E, all pairs are for the target field names and values.
  5. Method of import: A place holder is used to import source data. use '<UpdateFrom>AccountName</UpdateFrom>', '<UpdateFrom>minus</UpdateFrom>' and '<UpdateFrom>plus</UpdateFrom>' in the value cell. Here 'AccountName' is a reserved word for the source account name, 'minus' and 'plus' are field names from source data record.
LimitationsSince the banks have their own file format without a governing standard, the standard set of field data is not available. A field is not importable unless its value is named and delimited. A CSV file of statement does not have summary data. We hope we can help the industry to standardize the CSV statement file.
Review accountsSince the account sheets are automatically generated and assigned a large index numbers , so they will be appended at the end of account list. You can also copy all credit account records to a singular account to be categorized, grouped and totaled for analysis.
New Credit Card supportThe above list listed a number of credit card CSV files from banks that the EAT tool supports. If you can't make your CSV file work, then contact us and we are committed to support you. But user must agree to supply the CSV file and willing to alter or expose personal data in the CSV file to our engineer, and trust us as a legal USA based business company to keep your personal data confidential for life.
figure 3572





Create Report

How to run

Once user is assured that a correct parameter file is selected and its manual input files are updated and bank CSV files are in place, user then can proceed to create report. In EAT Manager, go to Page Run and click Create Report. If it is run from a network drive, make sure the path where user invokes Eat Manager, was assocoated with a mapped drive letter.


Files created

The report file was created in directory RPT. The OneBook file may be created in directory 'eob'. For example, 'rpt_2021_06_09_0' consists of prefix 'rpt', year, month, date and sequence number, and 'eob_2021_06_09_0' consists of prefix 'rpt', year, month, date and sequence number. The sequence number will increases within the same date. A copy of all input files were created inside a directory named in the same pattern, for example, 'copy_2021_06_09_0'. This directory was beforehand created in directory 'copy'. A new log file was created in a directory 'log'. The name of the log file follows the same pattern mentioned before, for example, 'log_2021_06_09_0'.


File History

The number of files created in directory 'copy', 'eob', 'rpt' and 'log' are getting large in count. These files in history could help user go back to review. But if you decided older files are obsolete and need to delete them, then go to page 'Clean' and remove older files except the files as minimum to keep.





Analyze the Report

General

The Excel report file consists a main tab 'Main_MathMap' and all accounts defined by user. Due to Excel's powerful functionality, users can do a lot to analyze each account to meet their financial goals.


Navigation

On each sheet, the first column contains the links to navigate to account pages.


MathMap

Users have defined the calculating cells and copy link cells with calculating steps. On main page, the first row listed the calculation steps on columns from 0 to 99. For each account, the calculation commands and copy link commands are listed on corresponding columns, for example, 'Net=Debit-Credit' is listed for account 'Furniture' on column D. The calculation goes with lowest columns first towards higher until last column 99. so arrange your calculation steps carefully and make sure the data for next step is calculated or copied already and ready for next step.


Accounts and Types

On main tab Main_MathMap, Column A contains the account names, and Column C contains their corresponding Types. Column B is user's descriptions.


Link Dependences

The LNK, LBK and LGH commands indicate one account is depending on another. User should avoid to make one account depending on the other, and then the other depending back on the original one, so that it forms a loop disaster which causes the calculation never ends.


Account Pages

The rest of the tab pages are for accounts. The account pages are shown in a way the user had designed and envisioned. In the following example, the field 'Balance' is a accumulative field, it increases by adding field 'Net' to the immediate row on the same column. The last 'good here' phrase is for the depending account which will pull the data over from one (also defined) of the fields on the record.


Subtotal On Group

The command 'GroupSubtotalForChart' allows user to group a field in an account and also calculate the subtotal within groups.

A B C D
GroupSubtotalForChart CollegeLoan DistributeDate Net
GroupSubtotalForChart CollegeLoan DistributeDate|Month Minus|Plus|Net
figure 4580

Here in figure 4580, Column A is the command name 'GroupSubtotalForChart'. Column B is the account name. Column C is the field name or multiple names as group. Column D is the field or multiple fields in which the group values are subtotaled. The multiple field names are separated by Pipe |.


Show Group Chart

The command 'GroupSubtotalForChart' above generates an account group subtotals. Based on this set of data, a chart can be displayed in Excel chart, manually now. Future version will display the chart automatically.







Accounting Equation

In our business model, there is a page called AccountingEquation. This page is also the last page in the report. The equation follows the industrial accounting principle.
The equation is:

  1. Assets = Liabilities + Equity.
  2. Equity = NetIncome + Capitals.
  3. NetIncome = Incomes - Expenses.
Every time a user runs the report with new journal entry updates, the accounting equation will stay true.


Family Checking Account

The checking account shows the accumulative balance in column Balance.


Partner s W2 Chart

This chart shows partner's W2 Income Tips amounts of every year of employment in a chart.





Update EAT

Download zip File

EAT update is free from charge. An owner of EAT can download updated version of it at www.excelaccountingtool.com/DownloadModel03/EatUpdate, provided the owner had logged in.


Unzip File

Unzip the downloaded zip file, put in the Installation Full Path (IFP) in 'This Folder' and choose 'Replace the files in the destination'.


License File

The new update version works on the existing license file, which was untouched during the update and continues to work through out its term.





Download Balance Copying Macro

Download text File

The text file updatebalance.txt contents Excel Macro codes. It is for the User's reference only. User should modify this Macro to fit his or her own needs. The User should have a basic understanding of how Macro runs. The Macro download is free from charge. An owner of EAT can download the Macro at www.excelaccountingtool.com/DownloadModel03/MacroBalanceUpdate, provided the owner had logged in.


How to install the Macro

Open sheet Macro Manager , create a new Macro and then copy and paste the file content to the new Macro..


How to run the Macro

Before you run this Macro, make sure you click on the sheet you intended to run on so that it becomes the current sheet.


The Macro functions

function 1: prompt User to enter a number for the Month column of F. If the number is found, increase the Month number by 1. If not found, exit the entire Macro.
function 2: clear column J with the value 'U' or 'u'.
function 3: copy value of field NewBalance to field previousBalance, and copy value of field NewBalance2 to field previousBalance2.





Recover License

Download the license File

If you made purchase and the license has not been expired yet, an owner of EAT can download the license file that was, for some reason, lost. goto www.excelaccountingtool.com/DownloadModel03/LostRecover, provided the owner had logged in.


Copy the file

Please simply copy the license file to the Installation Full Path (IFP)


Executables

If you lost the executable files, please update the product, you will have the entire product restored as before except the user data files and start from scratch again





General Rules

Rule 1, Name the sheets

Only a sheet named in pattern 'sheet*' and 'repeat*' participates in report. Other sheets will not. For example, sheet3, repeatJune, and sheetMarch participate, while xsheet3 and xRepeatMarch will not.
For best practice, it is recommended to create multiple sheets, to name the sheets, and to categorize commands as demonstrated in OneBook file:


Rule 2, Command column A

Column A is for command names which are reserved. Reserved command names are 'type', 'account', 'add', 'setKeyField', 'setInitValue', 'hideTheField', 'changeOrderIndex', '', '', '', '', '', etc.


Rule 3, Comments

Add a '*' or 'x' to lead column A, for example '*account', will comment out the entire row and this row will no longer participate. Comments are very important in helping to remember things.


Rule 4, Name objects

Use alphanumeric chars to name an object like Type, Account and Fields. No space is allowed. The first char must be a letter. For example: 'Abc123'.


Rule 5, Money amounts

Use '+' '-' '.' or '0' to '9' to express money amount. '+' and '-' are only valid in first position and only one '.' is allowed. Following are all possible valid formats: '12.34' '.36' '+12.34' '+.36' '-12.34' '-.36'. Following are possible invalid formats: '1X2.34' '.36z' '1+2.34' '.36.23' '12-34' 'w.36'.





General Concepts

6 Key Fields

'KeyField', 'DateSeqAsKey', 'Year', 'Month', 'Date' and 'SeqNumber' are the 6 fields for standard key in an account. User can choose a user defined field for account key. 'KeyField' holds the key field name. In standard key, it holds 'DateSeqAsKey' or otherwise the user defined field name. In standard key, the key field 'DateSeqAsKey' holds the combination of values from these 4 fields 'Year', 'Month', 'Date' and 'SeqNumber'. For example, the value '2020.12.08.0017'. 'Year' is 4 char long, 'Month' is 2 char long, 'Date' is 2 char long and 'SeqNumber' is not limited in length, and can hold long string like on-line meeting ID 8723512987. Even though the field name is 'Year', you can treat it anything you want with alphanumeric chars, for example: JOY1 or 2021. Same is said for 'Month', 'Date' and 'SeqNumber'. 'SeqNumber' can be expressed in 'HHMM', 2 digits for hour and 2 digits for minutes.


DateSeqAsKey

This field 'DateSeqAsKey' is a standard formatted and consolidated field from field Year, Month, Date and SeqNumber. It serves as a standard key.


EAT

The acronym of Excel Accounting Tool.


Error Messages

In the log file, there shouldn't be any error messages for each run. If there is, correct right away. The number of errors is printed at the bottom of the log. An error message will have 5 repeating lines saying 'Attention, Error!' and it is easy to spot. An error message usually contains a book name, a sheet name and a row number. Figuring the nature of the error takes some analytic work at most.


Excel Accounting Tool

the product name.


Compact Mode

In this mode, user specify the header at top of sheet, and enter the values of each fields in a row below provided the field name in header and the value are on the same column. See 'Add ledger transactions in Compact Mode' for more information.


IDD

Installation Disk Drive. For example, 'E:' or 'C:'.


IFP

Installation Full Path. For example, 'E:\kenny\eat' or 'C:\Autoshop\eat', where 'eat' is called 'the Working Directory'.


LBK

link the value from a specified field in the row which has the same specified key in user defined key field in the account specified. This means the host account is said to depend on, only in a row amount by user defined key field, the account specified.
Here is an example: 'LBK4|ZoomMeetingBill|Minus|2346534536'


Ledger Transaction

When there is a business activity taking place, it is time to enter a ledger transaction. A ledger transaction consists of a command 'add' in column A and an account name in column B. From column C there must be a list of pairs of field name and field value. Again the pairs must start in column C. The pairs could include 2 blank cells. A single cell is not allowed in between pairs. If we number all the columns with integers from 1 to N starting 1 for column A, then the field name is always on odd cell , and value on even cell. Search 'Add ledger transactions' for more. Usually a single value transaction requires entering only 1 value besides the key fields. Most of the accounts are single value accounts, for examples, Bank Checking account, Utility bill accounts.


LGH

link the value from a specified field in the last row marked by 'good here' in the field 'Marker' of the account specified. This means the host account is said to depend on, mostly in total amount, the account specified.
Here is an example: 'LGH7|USBank|Balance'


Link

When LNK or LBK are specified for a field in standard key mode, set 'Year' to 'Link' and 'SeqNumber' to target account's SeqNumber's value, the target account's 'Year', 'Month' and 'Date' value will be copied over to form a key match. If the match is not found, the link record will be thrown away.


LNK

link the value from a specified field in the row which has the same standard key in the account specified. This means the host account is said to depend on, only in a row amount, the account specified.
Here is an example: 'LNK4|BillGas|Net'


Loop Disaster

The LNK, LBK and LGH commands indicate one account is depending on another. User should avoid to make one account depending on the other, and then the other depending back on original the one, so that it forms a loop disaster which causes the calculation never ends.


Marker

The default field 'Marker' is for every account. This field holds the value 'good here' which indicates as a mark a field value in the last row could be linked by command 'LGH'. This field 'Marker' can also hold command 'Reset', for example, 'reset|FieldName1:0.0|FieldName2:0.0' which will sets 1 or more fields to a new value when the account records are calculated into a report sheet.


MathCalculation

The math calculation goes with lowest columns first towards higher until last column 99. so arrange your calculation steps carefully and make sure the data for next step is calculated or copied already and ready for next step.


PREV

the value of the same column in immediate previous row.


Reserved Words

Reserved words are 'type', 'account', 'add', 'env', 'PREV', 'LNK', 'LBK', 'LGH', 'LINK', 'setKeyField', 'setInitValue', 'hideTheField', 'changeOrderIndex', 'KEYFIELD', 'DateSeqAsKey', 'Description', 'Status', 'YEAR', 'MONTH', 'DATE', 'SEQNUMBER', 'Marker', 'UpdateCondition', 'AccountName', 'HyperLink', '', '', '', '', etc.


Standard Key Mode

By default, an account uses 'DateSeqAsKey' as key field and set it in 'KeyField'. Read more, refer to '6 Key Fields'.


Working Directory or IFP

The working directory in the disk system or Installation full path (IFP), where the user choose to install the product EAT, and where the user issues commands at. It serves as root of everything in EAT directory system.





Back up

Purpose

All files reside on the same disk drive. If the disk drive is no longer functioning, all financial data files are lost. The solution is to backup the files to another USB drive.


Backup a Must

Purchase a portable USB drive for backup purpose. Plug the drive to a USB port. Backup after you have made changes to the system, usually at the end of day. Once the backup is finished, then proceed to shut down the PC.


How to

In Eat Manager, go to page Backup, click the bottom buttons to back up either to a drive or to a directory.


Method

This backup command only backs up the files that have the file dates newer than the ones on destination drive, avoiding waste of time on copying unnecessarily the files that have the same contents as that of the destination ones.





History of Changes

Table of Changes

Date Description
07/15/2021adjust User Manual.
07/20/2021ENV Commands: modified how to define the command strings for Excel and Text editors. The new way is simpler and the user just write out an entire string with none case-sensitive 'XXX' which is to be replaced with the target file name.
07/20/2021Trial Period: modified the trial term period to be 1 month.
08/13/2021Concatenate the Calculation strings with separator Comma instead of '/r' to avoid not being displayed in LibreOffice in sheet Main_MathMap.
08/14/2021Remove error warning bell sound.
08/14/2021log as an error when capacity limits are reached.
08/22/2021Add Excel Macro-enabled file extension XLSM file as input file.
08/23/2021Change command 'setKeyField' to set none-standard key in multiple fields.
08/28/2021Add a command 'CopyAccount' to copy records from one account to another.
09/07/2021Add a command 'CopyAccountOnFilter' to copy and also filter records from one account to another.
09/14/2021Add a default field 'Marker' for every account. This field holds the value 'good here' or 'reset|FieldName1:0.0|FieldName2:0.0'. See 'Marker' for more information.
09/15/2021Add a mode of entering header and values separately, the Compact Mode.
09/16/2021Add 2 default fields 'Description' and 'Status' for every account. These 2 fields are so useful and important that we might just add them as default for conveniences.
10/06/2021Allow calculation formula accepts constants like '3.0' in 'Amount|c6=Share*3.0'.
10/06/2021Since computer double calculation is not accurate and the near zero result is expressed in 'Natural Exponential Function', the value less than 0.03 is presented as 0 to avoid confusion.
10/08/2021change CopyAccountOnFilter to CopyAccountOnIncFilter and add CopyAccountOnExcFilter command.
10/12/2021change CopyAccount, CopyAccountOnIncFilter and CopyAccountOnExcFilter commands to have a 'Order Number' field which serves as an order in which the commands are executed.
10/19/2021Add Repeat and RepeatRecord commands. These 2 commands are primarily used for records that have a link field 'LNK' and its 'Year' field is 'Link' so that user don't have to enter them in each sheets. The 2 new commands are duplicated into sheets prefixed by 'Repeat' in name.
10/25/2021Add inclusion of 'a template file' for report. Refer to section 'Report templates' for more information.
10/26/2021Add few other formatting commands for report. Refer to section 'Report formatting commands' for more information.
11/10/2021Add process to create reports on Credit Card statements from 5 banks. More banks will be added in the future.
01/01/2022Add Capital and USBank Credit card PDF statement processing. Finished a better coding strategy for PDF Statement processing.
01/09/2022Made a minor revision for Command 'groupSubtotalForChart'. The revision is to allow the command to handle zero values for the totaling fields.
01/15/2022Added a Prelude file as Excel format that defined additional parameters. One parameter is the 'Scan' command which defines a directory in cell 2. User can define multiple 'Scan' command to define multiple directories. The other is a command called 'setDebugMode' which set the debug flag on and off. When it is on, many statistical data are written into the log file for analysis.
02/04/2022Enhanced the log report in Notepad++, which utilizes the collapsing #region #endregion region. Added a 'Debug mode' for log report.
02/08/2022Enhanced the field calculation formula to use left and right brackets '(' and ')' in the 'Type' definition. For example, user can use FieldName|c5=Field3*(field4+45)
03/07/2022Removed ENV Command ExcelEditor and TextEditor: We learned Windows provides default programs to open files. So those parameters are removed. User should go to Windows Default Program to assign desired programs to open Excel and Text files.
03/15/2022Completed the code logic to handle bank CSV files, and removed the code handling bank PDF files due to the license requirement.
04/25/2022Added a log entry for version limit controls.
04/28/2022Added a report formating commnad 'writeNavigationColumn'.
04/28/2022Changed CSV bank directory from signular and static to multiple and configurable in parameter file using the command 'scanBank'.
04/29/2022Added Dialog form key Enter and ESC responses.
04/30/2022Integrated the location limit for both manual and bank auto directories.
05/01/2022Adjusted source code to its optimum consolidated object structure.
figure 8001