home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Black Box 4
/
BlackBox.cdr
/
w3_apps
/
wck30p.arj
/
DDE.TX$
< prev
next >
Wrap
Text File
|
1991-12-10
|
20KB
|
591 lines
WinCheck 3.0 DDE Tech Notes
Version 3.0h 10/24/91 ⌐ 1991 Wilson WindowWare, Inc
This document is separated into three sections:
DDE Commands to Request WinCheck Information
DDE Commands to Enter or Change WinCheck information
The WinCheck DDE SDK
DDE Commands to Request WinCheck Information
============================================
These commands are sent to WinCheck with the DDE Request convention.
GETEARLIESTUNCLEARED
Description:
GETEARLIESTUNCLEARED will place the following ASCII string into
your return area:
M:mm,Y:yy
GETREG
GETREGLITE
Description:
GETREG and GETREGLITE will get the information from a WinCheck
Register, and place it into a tabbed ASCII file. GETREG returns
all information about each transaction (payee, amount, category/split
information, memo information, address, and tax/cleared status).
GETREGLITE does not return category information, memo lines, or
addresses. GETREGLITE is substantially faster than GETREG.
Certain filters can also be applied:
M=mm Specify Month.
Y=yy Specify Year
F=All Show all (no filter, default)
F=Cleared Show Cleared
F=Uncleared Show Uncleared
F=Credit Show Credit
F=Debit Show Debit
Example Usage's in Word for Windows:
To get the entire register for the current month in WinCheck, Account TUT:
{dde WinCheck TUT GetReg}
To get the May 91 Register without memos or categories:
{dde WinCheck TUT GetRegLite,m=05,y=91}
To get the May 91 Register, cleared transactions only:
{dde WinCheck TUT GetReg,m=05,y=91,f=cleared}
To get the May 91 Register, cleared debits only:
{dde WinCheck TUT GetReg,m=05,y=91,f=cleared,f=debit}
Format of Output
The output from GETREG will be a tabbed ASCII file. Each tab
represents a column. Each transaction will have 16 columns. If
the transaction is split amongst categories, then each split will
be displayed on subsequent lines. GETREGLITE does not use columns 8-16.
Column Description Example
1 Account ID TUT
2 Unique Record 12
Number for that month
3 Transaction Type 300
(see Table at end)
4 Date 03/10/91
5 Check # (if any). 203
Blank if not a check
6 Payee/Description Safeway
7 Transaction amount. -67.73
Debits will have a
negative sign.
8 Category/Subcategory. Personal:Food
SPLIT if split.
9 Tax significant. T
A "T" indicates tax
significance, a blank
indicates otherwise.
10 Transaction Cleared status C
A "C" indicates the
transaction is cleared, a
blank indicates otherwise.
11 "To" line in Address Seafirst Bank Co
12 Address 123 Main Street
13 City, State Seattle, WA
14 Zip code 98000
15 Memo 1 Groceries
16 Memo 2 Party food
The subsequent lines for a split transaction have the following format:
Column Description Example
1 Split Number. Always in #1
numerical order with a
pound sign.
2 Split amount -23.43
3 Category/Subcategory Personal:Hobbies
Example Output
TUT0 100 03/04/91 Checking Deposit 2783.93 Royalty T C
TUT1 300 03/05/91 3336 George Kilroy -9.50 Personal:Newspaper T
TUT2 300 03/05/91 3337 Seattle City Light -187.45 Utilities T C
TUT3 300 03/05/91 3338 U.S. West -65.47 SPLIT T #1 -35.34
Utilities:Home Phone #2 -30.13 Utilities:Celluar Phone
TUT4 300 03/05/91 3339 Cellular One -114.68 Utilities T
GETCATEGORIES
GETCATEGORIESSORTED
Description:
GETCATEGORIES and GETCATEGORIESSORTED will get the list of categories
and subcategories from WinCheck, and place it into an ASCII file.
GETCATEGORIES is significantly faster than GETCATEGORIESSORTED.
Example Usage in WinWord
{dde WinCheck TUT GetCategories}
{dde WinCheck TUT GetCategoriesSorted}
Format of Output
There is one category per line.
Example Output (sorted)
Band Income
Car Pymt
Computer
Credit Cards
Credit Cards:Gas
Garden Svc
Model Fees
Mortgage
Personal
Personal:Food
Personal:Hobbies
Personal:Magazines
Personal:Newspaper
Royalty
Utilities
Utilities:Celluar Phone
Utilities:Home Phone
GETCURDATE
Description:
GETCURDATE will return the current date.
GETCHECKING
GETSAVINGS
GETBNKCHECKING
GETBNKSAVINGS
Description:
These four commands will return the current balance for checking and
savings accounts, for either Your balance or the Bank's balance.
GETCOMMON
Description:
GETCOMMON will get a list of the common transactions defined in WinCheck.
Certain filters can also be applied:
R=All Show all Dates Common (default)
R=ll-hh Show Commons between ll and hh days
F=All Show both cleared and uncleared
F=Cleared Show Cleared
F=Uncleared Show Uncleared
Example Fields in Word for Windows
==================================
To get all of the Common Transactions:
{dde WinCheck TUT GetCommon}
To get all of the Common Transactions that are debits:
{dde WinCheck TUT GetCommon,f=debit}
To get all of the Common Transactions that happen from the 1st to the
15th of the month:
{dde WinCheck TUT GetCommon,r=1-15}
Gets all Common Transactions that happen from the 1st to the 15th
of the month, and credit the account:
{dde WinCheck TUT GetCommon,r=1-15,f=credit}
Format of Output
There is one common transaction per line. Each tab represents a
column. There are four columns:
Column Description Example
1 Transaction Properties MP,R
2 Day of month 04
3 Payee Seattle City Light
4 Amount -9.50
Example Output
A 03 Checking Deposit +2783.93
MP 04 George Kilroy -9.50
M 08 Seattle City Light -0.00
M 08 U.S. West Communications -0.00
M 08 Cellular One -0.00
MPP,R 08 Wells Fargo Mortgage Co -2245.85
M 08 Smith Lawn and Garden Care -145.56
M 11 Checking Deposit +3100.00
DDE Commands to Enter or Change WinCheck Information
====================================================
These commands are sent to WinCheck with the DDE Execute convention.
If the last two characters ar NR (i.e. WRITECHECKNR), this will
supress a register recalc. If you are going to add a bunch of
transactions at the same time, use the NR command, and then
use the RECALC command... this will increase speed dramatically.
WRITECHECK
WRITECHECKNR
Description:
WRITECHECK will enter a check into WinCheck's register. There are a
number or parameters that can be filled in:
Syntax Description Example
D=mm/dd/yy Specify Date D=03/09/91
T=dddd.cc Specify Amt T=45.84
C=X Specify Cleared C=Y
N=### Specify check number N=2342
P="ppppppp" Specify Payee P="Seattle City Light"
M="mmmmm" Specify Memo1 M="Groceries"
M2="mmmmm" Specify Memo2 M2="Party Food"
L="ccccc:ssss" Specify Category L="Personal:Groceries"
$T=n*ddd.cc Specify Split #n amount $T=1*34.56
(max 32)
$L=n*"ddd.cc" Specify Split #n category $L=1*"Utilities:Home Phone"
(max 32)
TO="ttt" "To" part of Address TO="Seattle City Light"
ADDR="sss" Street Address ADDR="123 Main Street"
CITY="ccc" City CITY="Seattle"
STATE=ss State STATE=WA
ZIP=zzzz Zip ZIP=98004
PRINT Prints this check PRINT
Examples
To make WinCheck write a check for 580.00 to Shorewood Apartments,
category Rent, using the current date, and the current check #:
[WriteCheck:p="Shorewood
Apartments",t=580.00,l="Rent"]
To make WinCheck write a check for 580.00 to Shorewood Apartments,
category Rent, using the current date, and current check #, and print it:
[WriteCheck:p="Shorewood
Apartments",t=580.00,l=Rent,print]
To make WinCheck write a check to US West for 65.47, split two ways,
35.34 for Home Phone, and 30.13 for the cellular phone (the line
breaks are for cosmetic reasons only):
[WriteCheck:p="US West",T=65.47,
$T=1*35.34,$L=1*"Utilities:Home Phone",
$T=2*30.13,$L=2*"Utilities:Cellular Phone"]
CDEPOSIT
SDEPOSIT
CDEPOSITNR
SDEPOSITNR
Description:
CDEPOSIT and SDEPOSIT are used the same way as WRITECHECK. CDEPOSIT
will make a checking deposit, and SDEPOSIT will make a savings deposit.
Examples
To make WinCheck make a deposit for 1000, split across "Band Income"
and "Payroll", on May 15, 1991:
[CDeposit:t=1000.00,
$T=1*450.00,$L=1*"Band Income",
$T=2*550.00,$L=2*"Payroll",D=05/15/91]
CMISC
SMISC
CMISCNR
SMISCNR
Description:
CMISC and SMISC allow you to make up your own transaction. Use the
same parameters as WRITECHECK, but add the following:
Syntax Description Example
DESC="ddd" Specify Description DESC="Service Fees"
T=dddd.cc Specify Amt T=45.84
CR Specify this transaction CR
credits your account
Examples
To make WinCheck enter Service Fees for 6.50 on June 12, 1991.
[CMisc:t=6.50,Desc="Service Fees",D=06/12/91]
ADD
ADDNR
Description:
ADD and ADDNR allow you to make up your own transaction. Use the
same parameters as CMISC, but add the following:
Syntax Description Example
Y=n Specify Type (from Table Y=303
at end of this doc,
T=dddd.cc Specify Amt T=45.84
R=y|n Specify Credit R=Y
Examples
To make WinCheck enter 10.00 of interest to Savings on June 12, 1991.
[ADD:t=10.00,Desc="Savings Interest",D=06/12/91,Y=303,R=Y]
MODIFY
MODIFYNR
Description:
MODIFY and MODIFYNR can be used to change certain properties about a
transaction. These properties are:
Transaction Amount
Cleared/Uncleared Status
Payee
Check Number
MODIFYNR will not cause a screen refresh or recalc afterwards. This is
helpful if you are modifying a large group of transactions at once
because the refresh is a slow process. You should use the RECALC command
(explained elsewhere in this text).
In order to modify a transaction, you must have the month, year,
and the unique record number of the transaction. The GETREG or
GETREGLITE functions can give you this information.
When modifying a transaction, specify the date and the record number
with the following parameters:
Syntax Description Example
D=mm/dd/yy Specify Description D=03/12/91
R=nn Specify number R=7
Example
Consider the following output from GETREGLITE:
TUT0 100 03/04/91 Checking Deposit 2783.93 C
TUT1 300 03/05/91 3336 George Kilroy -9.50
TUT2 300 03/05/91 3337 Seattle City Light -187.45
TUT3 300 03/05/91 3338 U.S. West -65.47
TUT4 300 03/05/91 3339 Cellular One -114.68
TUT5 300 03/05/91 3340 Wells Fargo Co -2245.85
If we want to clear the check to Seattle City Light (Unique Number 2),
we would use the following command (notice how only the month and year
need to be correct):
[Modify:d=03/01/91,r=2,C=Y]
Important: If you change the amount of a transaction which is split,
the category will be set back to "Personal".
RECALC
Description:
RECALC will cause a screen refresh and recalculation of WinCheck's
data from a specified date.
Example
This command will recalc/refresh all data that is greater than or
equal to March 1, 1991:
[Recalc:D=03/01/91]
REGISTERADDON
Description:
A third party add-on tool can add itself to WinCheck's Menu by using
the REGISTERADDON command. The following parameters are used:
Syntax Description Example
E="eee" Executable Name E="PAYROLL.EXE"
D="ddd" Menu Descriptor D="Payroll Deposit..."
S="sss" Status Line Text S="Make a Payroll Deposit"
C="ccc" Caption of your app C="Payroll Deposit"
Example
To register the Payroll Deposit Application that is supplied with
WinCheck, Payroll issues the following command:
[REGISTERADDON:E="PAYROLL.EXE",D="Payroll Deposit...",
S="Make a Payroll Desposit",C="Payrol Deposit"]
Please see the section on the DDE SDK for the guidelines
for WinCheck add-on tools.
The WinCheck DDE SDK
====================
This section is divided into 7 different chapters:
What is an Add-On Tool?
What is Registering?
Command line parameters
WWWDDEC.DLL
Using Visual Basic to write your tool
Using the Windows SDK to write your tool
Distributing your tool to the masses
What is an Add-On Tool?
=======================
WinCheck Add-On tools are separate programs that use DDE to manipulate
or examine WinCheck data. WinCheck can add these programs to its menu
to shield the End User of the fact that they are really running a
separate program. The End User will think that your add-on tool is just
a built-in part of WinCheck.
What is Registering?
====================
Registering an app with WinCheck informs WinCheck of what to put on
its menu, status line, and where the Add-On tool exists on the End
User's machine.
When an End User first receives your tool, they will need to add it
with the "Add..." menu choice in WinCheck's "Tools" menu. When they do
this, WinCheck will execute your add-on tool, with the /R:xxx switch
(see next chapter). Your application then must use the REGISTERADDON
execute command to acknowledge WinCheck's attempt to add on the tool.
Once your application has registered itself, there is no need to
register itself again.
Command line parameters
=======================
There are three types of interaction WinCheck has with your tool, two
involve executing it:
1. The End User adds it with the "Add..." menu option. WinCheck will
then run your application with the /R:xxx command line switch.
"xxx" is the current account ID, which is used for the topic in DDE
conversations. For Example:
PAYROLL.EXE /R:TUT
Your application should respond to this switch with the
REGISTERADDON command.
2. The End User selects your tool from the Menu, and your tool is not
already running. WinCheck will then run your application with the
/L:xxx command line switch. "xxx" is the current account ID, which
is used for the topic in DDE conversations. For Example:
PAYROLL.EXE /R:TUT
Your application need not respond to this switch, it merely should
use TUT (in this example) for the Topic.
3. The End User selects your tools from the Menu, and it is already
running. WinCheck will then bring your tool to the Top
(WinSDK call ShowWindow (hWndApp, SW_SHOW)).
WWWDDEC.DLL
WWWDDEC.DLL is a DLL included with WinCheck. It allows an application
to become a DDE Client without having to write any DDE code. The
exported function from this DLL is:
WORD FAR PASCAL WWWDDERun ( szCommand, iAction, szReturn, hWnd )
szCommand LPSTR. Points to the DDE comand string.
iAction int. Has one of three values:
0: Parse command only (for debugging)
1: Run the command only
2: Parse and Run the command (for debugging)
szReturn LPSTR. Points to an application supplied buffer for
DDE_REQUEST return data.
hWnd HWND. Handle to a top-level window of your application.
The Command Syntax is:
=<c> <App> <topic> <text>
<c> Can be one of the folowing values:
e Execute
r Request
p Poke
<App> Application Name
<Topic> Application Topic
<Text> Text of command
For example, to do a GetReg from WinCheck, you could call WWWDDERun
as in the following example:
WWWDDERun ("=r WinCheck TUT GetReg", 1, szReturnData, hWndParent );
This will return the register in the szReturnData memory block.
To register Payroll with WinCheck, it does this:
WWWDDERun (
"=e WinCheck TUT [RegisterAddOn:"
"e=\"Payroll.exe\","
"d=\"Payroll...\","
"s=\"Make a Payroll Deposit\","
"c=\"Payroll Deposit\"]",
1,
NULL,
hWndParent );
Using Visual Basic to write your tool
=====================================
The source code to the Payroll program written in Visual Basic can be
found on your WinCheck distribution disk. Visual Basic has its own DDE
commands, so WWWDDERun is not used.
Using the Windows SDK to write your tool
========================================
The source code to the Payroll program written in the Windows SDK
and Microsoft C can be found on your WinCheck distribution disk.
It makes use of the WWWDDERun command.
Distributing your tool to the masses
====================================
Once you have written your tool, there are a number of possibilities:
You can keep it to yourself
You can sell it as shareware/retail (like WinCheck)
You can upload it to our Forum on Compuserve for everyone to share
You can send it to Wilson WindowWare. If it is really cool, we will
put it in the next release of WinCheck and give you credit for
writing it.
Table of Transaction Types:
---------------------------
Checking Deposit 100
Endstub Check 200
Normal Check 300
Checking ATM 301
Checking MISC 302
Checking Interest 303
Checking Credit/Debit 304
Savings Deposit 320
Savings Withdrawal 321
Savings ATM 322
Savings Misc 323
Savings INterest 324
Savings Credit/Debit 325