Home End User
New Blog Posts: Merging Reports - Part 1 and Part 2

Removing Labels In the Label Wizard

edited December 2005 in End User
Is there any way that i can remove some of the labels from the Label Wizard?
There are some Labels that I do not want the user to use. thanks.

Comments

  • edited December 2005

    The Label templates are defined in ppAvIntl.pas and ppAvStd.pas. You can
    either modify the implementation section of the source code or you can
    create you own template sets and register them instead of the defailt
    template sets (see article below).

    --------------------------------------------------
    Article: Adding Custom Labels to the Label Wizard
    --------------------------------------------------

    The ReportBuilder Label Wizard contains an extensible architecture that
    enables additional sets of labels to be created and registered.

    Creating new label sets is a very simple process.

    1. Open ppLabelDef.pas located in RBuilder\Source.

    This unit contains the TppLabelSet class which is the abstract ancestor
    class for all label sets. This class contains the necessary logic to
    translate label specs into report specs.

    Descending from this class are two additional classes TppLaserJetLabels and
    TppDotMatrixLabels. All label sets should descend from one of these two
    classes.

    2. Open ppAvStd.pas located in RBuilder\Source

    This unit contains the TppAveryStandardLaserJetLabels class and the
    TppAveryStandardDotMatrixLabels class.

    The label specs are declared as const arrays, with each string element of
    the array representing a specific type of label.

    Example code from ppAvStd.pas:

    const
    caAveryStdLaserJet: array [0..157] of String = (

    { LabelType, Name,
    Width, Height, MarginTop, MarginBottom, MarginLeft, MarginRight,
    Orientation, RowSpacing, Units, Columns, ColumnPositions }

    'Address,2160 - Mini,2.63,1,4.5,5,0.5,0,0.81,0,0,0,1,0',
    'Address,2162 - Mini,4,1.33,4.5,5,0.5,0,0.12,0,0,0,1,0',


    As you can see in the above example code, each label spec consist of a comma
    delimited string that describes the dimensions of the label and the label
    sheet.

    3. The LabelSet class defintion for AVeryStdLaserJet labels consist of three
    methods, each containing a single line of code. These are shown below:


    {------------------------------------------------------------------------------}
    { TppAveryStdLaserJetLabels.Product }

    class function TppAveryStdLaserJetLabels.Product: String;
    begin
    Result := 'Avery Standard';
    end; {class function, Product}

    {------------------------------------------------------------------------------}
    { TppAveryStdLaserJetLabels.Count }

    class function TppAveryStdLaserJetLabels.Count: Integer;
    begin
    Result := High(caAveryStdLaserJet) + 1;
    end; {class function, Count}

    {------------------------------------------------------------------------------}
    { TppAveryStdLaserJetLabels.GetLabelDef }

    class function TppAveryStdLaserJetLabels.GetLabelDef(aIndex: Integer):
    String;
    begin
    Result := caAveryStdLaserJet[aIndex];
    end; {class function, GetLabelDef}


    4. The initialization/finalization sections at the bottom of the unit
    contain the RegisterLabelSet calls to make the label set known to the Label
    Wizard.


    5. ppAvIntl.pas located in RBuilder\Source contains the definitions for
    Avery International Labels.








    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
This discussion has been closed.