|
Label Wizard Tutorial (Advanced)
This tutorial is for advanced users, consultants
and computer programmers who want a quick overview of some of the
main features of Visual Builder.
In this tutorial a label will be created with the
following characteristics:
-
It will display the product description and a
bar code based on the entry inside the stock Alternative field.
-
The label will prompt for the invoice number to
print.
-
One label will be printed for each stock item
sold, except for non-stock items or stock items with quantities
sold that are equal to or less than zero.
1. Start Visual Builder and Click on Wizard. Then
click on the Label Wizard.
2. Click on Next and select "Invoiced Stock Items
(Product Sales)"
3. Click on Next and specify the dimensions of
the label.
4. Click on Next and select contents->title
and press Add and then New Line.
5. Select stock->Name2 and press Add.
6. Click on Finished.
7. Double-click on the Name2 object and change
the Display Length field setting to 13.
8. Click on the Barcode tab and select Ean/Jan
13, then click on OK.
9. Click the Glasses on the tool bar and
click on the Question tab.
10. Click on the Wizard button.
11. Enter you question text and click on
Finished. For example, "Enter the the invoice number to print
labels for."
12. Click on the Output tab and enter a suitable
name for the form and click on OK.
13. Click on the Title object on the label.
14. Click right-mouse and select Body
Properties.
15. Click on Links.
16. Change Sort from:
DTOS(Date) +
Invoiceno
to:
Invoiceno
The above ensures that the label is sorted and
searched by the invoice number instead of the date.
17. In Seek enter:
Answer1
The variable Answer1 was created by the Question
Wizard. It contains the invoice number entered by the user when the
label is executed.
18. Untick Nearest Match.
We want to ensure that labels for only the exact
transaction are printed. Unticking this option ensures that the
next closed invoice is not printed instead.
19. Make sure Join is set to "Not Joined" if
there is only one label per page. Otherwise leave it set to
Joined.
20. Click on the Rules tab.
21. Click on first visible rule in the first list
box.
22. Click add and type the following:
.Not.
Empty(contents->code)
The above rule ensures that the record is skipped
if the invoice item's code is blank. We don't want to print labels
for non-stock items.
23. Click OK.
Note: You could add a similar rule for items that
don't have a bar code, e.g.
.Not.
Empty(stock->Name2)
The above rule assumes that the bar code will be
stored in stock->Name2 which is the stock record's alternative
product code field. If the code is blank (empty), the record will
be not pass the rule and it will be skipped over.
24. Click on the box underneath "When one of
these rules is true, reporting is finished".
25. Click on Add.
26. Enter:
Answer1 #
Contents->Invoiceno
This rule ensures that if the transaction number
has changed, label printing will end.
27. Click on OK.
28. Now edit the first rule and change it like
so:
AsVal(Contents->Qty) > 0
This results in labels printing if the quantity
invoiced is greater than zero.
All stock quantity fields in CAPITAL are stored
as character fields. They must be converted to numeric using the
AsVAL()
function before numeric comparisons can be made.
29. Click Add again. (You should be in the "All
these rules must be true section".)
30. Add the following script:
Declare LabelCount
Type Numeric
Declare LoopCheck Type
Character
* Keep printing same
record?
If LabelCount >
0
LabelCount := LabelCount -1
HoldRecord := TRUE
Return TRUE
Endif
* Still on same
line?
If LoopCheck ==
Contents->Invoiceno + Contents->Lineref
Return TRUE
Endif
* Line has
changed...
LoopCheck :=
Contents->Invoiceno + Contents->Lineref
* Need to loop on same
line?
If
Val(Contents->Qty) > 1
LabelCount :=
Val(Contents->Qty) - 2
HoldRecord := TRUE
Endif
Return TRUE
This script ensures that the sale item is held in
position until all labels are printed. If the the quantity sold is
3, then the above script will ensure that the label stays on this
record for 3 iterations, before moving to the next item to
print.
31. Click OK.
32. Click on OK again to return to the label
form.
32. Save the form.
The file invstlab.sty found in the
\CAPITAL\FORMS folder contains a form created using the above set
of steps.
|