-
Notifications
You must be signed in to change notification settings - Fork 9
/
customers2.fmt
76 lines (60 loc) · 1.76 KB
/
customers2.fmt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# CUSTOMERS2.FMT
# Customer list, grouped by status.
#
<config>
StartConfString='$C10$$COFF$' // 10 CPI uncondensed
PaperLenght=60 // Letter size
ShowRunProgress=True
</config>
# Init event
#
<init type=Event>
*-- Retrieve customer data sorted by Status
SELECT * ;
FROM Customers ;
ORDER BY CustStat,CustID ;
INTO CURSOR qCustomers
SELECT qCustomers
GO TOP
</init>
<macros>
XCID=CustID
XSTAT=CustStat
TCOUNT=_COUNT[] // Global count
GCOUNT=_COUNT[CustStat] // Group count (resets when CustStat changes
</macros>
<groups>
G1 = CustStat | h1 | f1 // h1 and f1 are section names for the group's header and footer
</groups>
<format>
# ....+....^....+....^....+....^....+....^....+....^....+....^....+....^....+....^
he: XYZ Bookstore, INC BASIC CUSTOMERS LIST
he: Sorted by ID
he:
he: ID Customer name
he: ====== ================================
de: [XCID] [CustName ]
f1:
f1: Total %ALLT(CustStat)% customers: %allt(transform(GCOUNT,"999,999"))%
f1:
f1:
su:
su:
su: Total registered customers: %alltrim(transform(TCOUNT,'999,999'))%
</format>
<h1 StartOnNewPage=Yes>
$BON$Current status: %CustStat%$BOFF$
</h1>
<pf1 type=Footer ApplyIf=(CustStat='Active')>
ACTIVOS
</pf1>
<pf2 type=Footer ApplyIf=(CustStat='Removed')>
REMOVIDOS
</pf2>
<footer ApplyIf=(NOT INLIST(CustStat,'Active','Removed'))>
%DATETIME% %PageNo% of %PageCnt%
</footer>
<close Type=Event>
*-- File closing
USE IN qCustomers
</close>