Cust/Item Stat by Salesp. - add filter by Item Category Code

emulsifiedemulsified Member Posts: 139
Cust/Item Stat by Salesp. - add filter by Item Category Code

Need to filter by "Item Category Code" from "Item" table.

How would I add a tab for Item to the report so I can filter on "Item Category Code"?

The Value Entry table doesn't contain 'Item Category Code' field for Item and I need to filter by 'Item Category Code'.

How can this be accomplished??

I was thinking the fastest way would be to Add Code in the On PredataItem of "Value Entry" data item to filter on "Item Category Code" Field.

](*,) Here is my code that doesn't seem to work (Item is already defined in Global Vars as Record by default on this report):

Value Entry - OnPreDataItem()
Item.GET("Value Entry"."Item No.");
IF Item."Item Category Code" <> 'COSTUMES' THEN CurrReport.SKIP;

CASE SalespersonToUse OF
  SalespersonToUse::"Assigned To Customer":
    SETRANGE("Salespers./Purch. Code");
  SalespersonToUse::"Assigned To Sales Order":
    SETRANGE("Salespers./Purch. Code","Salesperson/Purchaser".Code);
END;

CurrReport.CREATETOTALS("Invoiced Quantity","Sales Amount (Actual)",Profit,"Discount Amount");

We have items like 4235X-SALE and it has an "Item Category Code" of 'COSTUMES'. So if the current "Value Entry"."Item No." does not have 'COSTUMES' as its "Item Category Code" from the Item table I do not want it to be in the report totals.

When running this report we do not select a specific Item No. instead for our purpose we use a wildcard like *SALE*|*A* to get the Items we want to be reported on but some items that meet the above criteria fall into several categories so we need a way of limiting our report to Item."Item Category Code" = 'COSTUMES'

Here is the entire code of the report:
OBJECT Report 10049 Cust./Item Stat. by Salespers.
{
  OBJECT-PROPERTIES
  {
    Date=11/30/07;
    Time=[ 9:02:23 PM];
    Modified=Yes;
    Version List=NAVUS3.70;
  }
  PROPERTIES
  {
    CaptionML=[ENU=Cust./Item Stat. by Salespers.;
               ESM=Estad. cliente/prod. por vendedor;
               FRC=Statistiques articles/client par repr‚sentant;
               ENC=Cust./Item Stat. by Salespers.];
    OnPreReport=BEGIN
                  CompanyInformation.GET;
                  FilterString := "Salesperson/Purchaser".GETFILTERS;
                  FilterString2 := Customer.GETFILTERS;
                  FilterString3 := "Value Entry".GETFILTERS;
                  CASE SalespersonToUse OF
                    SalespersonToUse::"Assigned To Customer":
                      SalespersonString := Text002;
                    SalespersonToUse::"Assigned To Sales Order":
                      SalespersonString := Text003;
                    ELSE
                      ERROR(Text001);
                  END;
                END;

  }
  DATAITEMS
  {
    { PROPERTIES
      {
        DataItemTable=Table13;
        DataItemTableView=SORTING(Code);
        PrintOnlyIfDetail=Yes;
        ReqFilterHeadingML=[ENU=Salesperson;
                            ESM=Vendedor;
                            FRC=Repr‚sentant;
                            ENC=Salesperson];
        OnPreDataItem=BEGIN
                        CurrReport.CREATETOTALS("Value Entry"."Sales Amount (Actual)",Profit,"Value Entry"."Discount Amount");
                      END;

        OnAfterGetRecord=BEGIN
                           CurrReport.NEWPAGEPERRECORD := OnlyOnePerPage;
                         END;

        ReqFilterFields=Code,Name;
      }
      SECTIONS
      {
        { PROPERTIES
          {
            SectionType=Header;
            PrintOnEveryPage=Yes;
            SectionWidth=18150;
            SectionHeight=1692;
          }
          CONTROLS
          {
            { 1001;Label        ;0    ;0    ;7500 ;423  ;FontSize=8;
                                                         FontBold=Yes;
                                                         CaptionML=[ENU=Customer/Item Statistics by Salesperson;
                                                                    ESM=Estad¡sticas cliente/producto por vendedor;
                                                                    FRC=Statistiques client/article par repr‚sentant;
                                                                    ENC=Customer/Item Statistics by Salesperson] }
            { 1002;TextBox      ;14850;0    ;2100 ;423  ;HorzAlign=Right;
                                                         SourceExpr=FORMAT(TODAY,0,4) }
            { 1003;TextBox      ;17100;0    ;1050 ;423  ;HorzAlign=Right;
                                                         SourceExpr=TIME;
                                                         Format=<Hours12>:<Minutes,2> <AM/PM> }
            { 1004;TextBox      ;0    ;423  ;7500 ;423  ;SourceExpr=CompanyInformation.Name }
            { 1005;Label        ;16950;423  ;750  ;423  ;ParentControl=1006;
                                                         HorzAlign=Right }
            { 1006;TextBox      ;17700;423  ;450  ;423  ;CaptionML=[ENU=Page;
                                                                    ESM=P gina;
                                                                    FRC=Page;
                                                                    ENC=Page];
                                                         SourceExpr=CurrReport.PAGENO }
            { 1007;TextBox      ;16650;846  ;1500 ;423  ;HorzAlign=Right;
                                                         SourceExpr=USERID }
          }
           }
        { PROPERTIES
          {
            SectionType=Header;
            PrintOnEveryPage=Yes;
            SectionWidth=18150;
            SectionHeight=423;
            OnPreSection=BEGIN
                           CurrReport.SHOWOUTPUT((CurrReport.PAGENO = 1) AND (FilterString <> ''));
                         END;

          }
          CONTROLS
          {
            { 9   ;TextBox      ;0    ;0    ;18150;423  ;SourceExpr="Salesperson/Purchaser".TABLECAPTION + ':  ' + FilterString }
          }
           }
        { PROPERTIES
          {
            SectionType=Header;
            PrintOnEveryPage=Yes;
            SectionWidth=18150;
            SectionHeight=423;
            OnPreSection=BEGIN
                           CurrReport.SHOWOUTPUT((CurrReport.PAGENO = 1) AND (FilterString2 <> ''));
                         END;

          }
          CONTROLS
          {
            { 10  ;TextBox      ;0    ;0    ;18150;423  ;SourceExpr=Customer.TABLECAPTION + ':  ' + FilterString2 }
          }
           }
        { PROPERTIES
          {
            SectionType=Header;
            PrintOnEveryPage=Yes;
            SectionWidth=18150;
            SectionHeight=423;
            OnPreSection=BEGIN
                           CurrReport.SHOWOUTPUT((CurrReport.PAGENO = 1) AND (FilterString3 <> ''));
                         END;

          }
          CONTROLS
          {
            { 11  ;TextBox      ;0    ;0    ;18150;423  ;SourceExpr="Value Entry".TABLECAPTION + ':  ' + FilterString3 }
          }
           }
        { PROPERTIES
          {
            SectionType=Header;
            PrintOnEveryPage=Yes;
            SectionWidth=18150;
            SectionHeight=846;
            OnPreSection=BEGIN
                           CurrReport.SHOWOUTPUT(CurrReport.PAGENO = 1);
                         END;

          }
          CONTROLS
          {
            { 1020000;TextBox   ;0    ;0    ;18150;423  ;SourceExpr=SalespersonString }
          }
           }
        { PROPERTIES
          {
            SectionType=Header;
            PrintOnEveryPage=Yes;
            SectionWidth=18150;
            SectionHeight=1692;
          }
          CONTROLS
          {
            { 12  ;Label        ;0    ;0    ;1650 ;423  ;ParentControl=27;
                                                         VertAlign=Bottom;
                                                         FontBold=Yes }
            { 13  ;Label        ;3000 ;0    ;4500 ;423  ;ParentControl=28;
                                                         VertAlign=Bottom;
                                                         FontBold=Yes }
            { 15  ;Label        ;300  ;423  ;1650 ;423  ;ParentControl=34;
                                                         VertAlign=Bottom;
                                                         FontBold=Yes }
            { 16  ;Label        ;3300 ;423  ;4500 ;423  ;ParentControl=35;
                                                         VertAlign=Bottom;
                                                         FontBold=Yes }
            { 17  ;Label        ;14400;423  ;1500 ;846  ;ParentControl=49;
                                                         VertAlign=Bottom;
                                                         FontBold=Yes;
                                                         MultiLine=Yes;
                                                         CaptionML=ENU=Price }
            { 20  ;Label        ;6150 ;846  ;2250 ;423  ;ParentControl=46;
                                                         VertAlign=Bottom;
                                                         FontBold=Yes }
            { 21  ;Label        ;8550 ;846  ;3750 ;423  ;ParentControl=47;
                                                         VertAlign=Bottom;
                                                         FontBold=Yes }
            { 22  ;Label        ;12750;423  ;1050 ;846  ;ParentControl=48;
                                                         HorzAlign=Right;
                                                         VertAlign=Bottom;
                                                         FontBold=Yes;
                                                         MultiLine=Yes }
            { 23  ;Label        ;16050;423  ;1800 ;846  ;ParentControl=50;
                                                         HorzAlign=Right;
                                                         VertAlign=Bottom;
                                                         FontBold=Yes }
            { 1000000000;Label  ;450  ;846  ;1650 ;423  ;VertAlign=Bottom;
                                                         FontBold=Yes;
                                                         CaptionML=ENU=Date }
            { 1000000003;Label  ;3450 ;846  ;2550 ;423  ;VertAlign=Bottom;
                                                         FontBold=Yes;
                                                         CaptionML=ENU=Document Number }
          }
           }
        { PROPERTIES
          {
            SectionType=Body;
            SectionWidth=18150;
            SectionHeight=423;
          }
          CONTROLS
          {
            { 27  ;TextBox      ;0    ;0    ;1500 ;423  ;HorzAlign=Left;
                                                         CaptionML=[ENU=Salesperson;
                                                                    ESM=Vendedor;
                                                                    FRC=Repr‚sentant;
                                                                    ENC=Salesperson];
                                                         SourceExpr=Code }
            { 28  ;TextBox      ;3000 ;0    ;4500 ;423  ;CaptionML=[ENU=Salesperson Name;
                                                                    ESM=Nombre vendedor;
                                                                    FRC=Nom du repr‚sentant;
                                                                    ENC=Salesperson Name];
                                                         SourceExpr=Name }
          }
           }
        { PROPERTIES
          {
            SectionType=Footer;
            SectionWidth=18150;
            SectionHeight=1269;
            OnPreSection=BEGIN
                           "CalculateProfit%";
                         END;

          }
          CONTROLS
          {
            { 29  ;TextBox      ;16050;423  ;1800 ;423  ;SourceExpr="Value Entry"."Sales Amount (Actual)" }
            { 33  ;Label        ;3000 ;423  ;6600 ;423  ;PadChar=.;
                                                         CaptionML=[ENU=Report Totals;
                                                                    ESM=Informe totales;
                                                                    FRC=Rapport des totaux;
                                                                    ENC=Report Totals] }
          }
           }
      }
       }
    { PROPERTIES
      {
        DataItemIndent=1;
        DataItemTable=Table18;
        DataItemTableView=SORTING(Salesperson Code,No.);
        PrintOnlyIfDetail=Yes;
        OnPreDataItem=BEGIN
                        CASE SalespersonToUse OF
                          SalespersonToUse::"Assigned To Customer":
                            BEGIN
                              SETCURRENTKEY("Salesperson Code","No.");
                              SETRANGE("Salesperson Code","Salesperson/Purchaser".Code);
                            END;
                          SalespersonToUse::"Assigned To Sales Order":
                            BEGIN
                              SETCURRENTKEY("No.");
                              SETRANGE("Salesperson Code");
                            END;
                        END;

                        CurrReport.CREATETOTALS("Value Entry"."Sales Amount (Actual)",Profit,"Value Entry"."Discount Amount");
                      END;

        ReqFilterFields=No.,Search Name;
      }
      SECTIONS
      {
        { PROPERTIES
          {
            SectionType=Body;
            SectionWidth=18150;
            SectionHeight=1269;
          }
          CONTROLS
          {
            { 34  ;TextBox      ;300  ;423  ;1500 ;423  ;HorzAlign=Left;
                                                         CaptionML=[ENU=Customer No.;
                                                                    ESM=N§ cliente;
                                                                    FRC=Nø de client;
                                                                    ENC=Customer No.];
                                                         SourceExpr="No." }
            { 35  ;TextBox      ;3300 ;423  ;4500 ;423  ;CaptionML=[ENU=Customer Name;
                                                                    ESM=Nombre cliente;
                                                                    FRC=Nom du client;
                                                                    ENC=Customer Name];
                                                         SourceExpr=Name }
            { 36  ;TextBox      ;10050;423  ;2250 ;423  ;SourceExpr="Phone No." }
            { 37  ;TextBox      ;13950;423  ;3750 ;423  ;SourceExpr=Contact }
            { 38  ;Label        ;9000 ;423  ;900  ;423  ;FontBold=Yes;
                                                         CaptionML=[ENU=Phone:;
                                                                    ESM=Tel‚fono:;
                                                                    FRC=T‚l‚phone:;
                                                                    ENC=Phone:] }
            { 39  ;Label        ;12600;423  ;1200 ;423  ;FontBold=Yes;
                                                         CaptionML=[ENU=Contact:;
                                                                    ESM=Contacto:;
                                                                    FRC=Contact :;
                                                                    ENC=Contact:] }
          }
           }
        { PROPERTIES
          {
            SectionType=Footer;
            SectionWidth=18150;
            SectionHeight=1692;
            OnPreSection=BEGIN
                           "CalculateProfit%";
                         END;

          }
          CONTROLS
          {
            { 40  ;TextBox      ;0    ;423  ;1500 ;423  ;HorzAlign=Left;
                                                         SourceExpr="Salesperson/Purchaser".Code }
            { 41  ;TextBox      ;16050;423  ;1800 ;423  ;SourceExpr="Value Entry"."Sales Amount (Actual)" }
            { 45  ;Label        ;3000 ;423  ;5100 ;423  ;PadChar=.;
                                                         CaptionML=[ENU=Salesperson Totals;
                                                                    ESM=Totales vendedor;
                                                                    FRC=Totaux du repr‚sentant;
                                                                    ENC=Salesperson Totals] }
          }
           }
      }
       }
    { PROPERTIES
      {
        DataItemIndent=2;
        DataItemTable=Table5802;
        DataItemTableView=SORTING(Source Type,Source No.,Item Ledger Entry Type,Item No.,Posting Date)
                          WHERE(Source Type=CONST(Customer),
                                Item Ledger Entry Type=CONST(Sale),
                                Expected Cost=CONST(No));
        OnPreDataItem=BEGIN
                        Item.GET("Value Entry"."Item No.");
                        IF Item."Item Category Code" <> 'COSTUMES' THEN CurrReport.SKIP;

                        CASE SalespersonToUse OF
                          SalespersonToUse::"Assigned To Customer":
                            SETRANGE("Salespers./Purch. Code");
                          SalespersonToUse::"Assigned To Sales Order":
                            SETRANGE("Salespers./Purch. Code","Salesperson/Purchaser".Code);
                        END;

                        CurrReport.CREATETOTALS("Invoiced Quantity","Sales Amount (Actual)",Profit,"Discount Amount");
                      END;

        OnAfterGetRecord=BEGIN
                           Profit := "Sales Amount (Actual)" + "Cost Amount (Actual)";
                           "Discount Amount" := -"Discount Amount";
                         END;

        ReqFilterFields=Item No.,Inventory Posting Group,Posting Date;
        GroupTotalFields=Item No.;
        DataItemLink=Source No.=FIELD(No.),
                     Global Dimension 1 Code=FIELD(Global Dimension 1 Filter),
                     Global Dimension 2 Code=FIELD(Global Dimension 2 Filter);
      }
      SECTIONS
      {
        { PROPERTIES
          {
            SectionType=GroupFooter;
            SectionWidth=18150;
            SectionHeight=423;
            OnPreSection=BEGIN
                           "CalculateProfit%";
                           IF NOT Item.GET("Item No.") THEN BEGIN
                             Item.Description  := 'Others';
                             Item."Base Unit of Measure" := '';
                           END;
                         END;

          }
          CONTROLS
          {
            { 46  ;TextBox      ;6150 ;0    ;2250 ;423  ;HorzAlign=Left;
                                                         CaptionML=[ENU=Item Number;
                                                                    ESM=N§ producto;
                                                                    FRC=Num‚ro d'article;
                                                                    ENC=Item Number];
                                                         SourceExpr="Item No." }
            { 47  ;TextBox      ;8550 ;0    ;3600 ;423  ;CaptionML=[ENU=Item Description;
                                                                    ESM=Descripci¢n producto;
                                                                    FRC=Description d'article;
                                                                    ENC=Item Description];
                                                         SourceExpr=Item.Description }
            { 48  ;TextBox      ;12750;0    ;1050 ;423  ;CaptionML=[ENU=Quantity;
                                                                    ESM=Cantidad;
                                                                    FRC=Quantit‚;
                                                                    ENC=Quantity];
                                                         SourceExpr=-"Invoiced Quantity" }
            { 49  ;TextBox      ;14400;0    ;1500 ;423  ;CaptionML=[ENU=Unit of Measure;
                                                                    ESM=Unidad medida;
                                                                    FRC=Unit‚ de mesure;
                                                                    ENC=Unit of Measure];
                                                         SourceExpr=Item."Unit Price" }
            { 50  ;TextBox      ;16050;0    ;1800 ;423  ;CaptionML=[ENU=Amount;
                                                                    ESM=Importe;
                                                                    FRC=Montant;
                                                                    ENC=Amount];
                                                         SourceExpr="Sales Amount (Actual)" }
            { 1000000001;TextBox;450  ;0    ;2250 ;423  ;HorzAlign=Left;
                                                         CaptionML=[ENU=Item Number;
                                                                    ESM=N§ producto;
                                                                    FRC=Num‚ro d'article;
                                                                    ENC=Item Number];
                                                         SourceExpr="Value Entry"."Posting Date" }
            { 1000000002;TextBox;3450 ;0    ;2100 ;423  ;HorzAlign=Left;
                                                         CaptionML=[ENU=Item Number;
                                                                    ESM=N§ producto;
                                                                    FRC=Num‚ro d'article;
                                                                    ENC=Item Number];
                                                         SourceExpr="Value Entry"."Document No." }
          }
           }
        { PROPERTIES
          {
            SectionType=Footer;
            SectionWidth=18150;
            SectionHeight=846;
            OnPreSection=BEGIN
                           "CalculateProfit%";
                         END;

          }
          CONTROLS
          {
            { 54  ;TextBox      ;300  ;423  ;1500 ;423  ;HorzAlign=Left;
                                                         SourceExpr=Customer."No." }
            { 55  ;TextBox      ;16050;423  ;1800 ;423  ;SourceExpr="Sales Amount (Actual)" }
            { 59  ;Label        ;3300 ;423  ;4800 ;423  ;MultiLine=No;
                                                         PadChar=.;
                                                         CaptionML=[ENU=Customer Totals;
                                                                    ESM=Totales cliente;
                                                                    FRC=Totaux du client;
                                                                    ENC=Customer Totals] }
          }
           }
      }
       }
  }
  REQUESTFORM
  {
    PROPERTIES
    {
      Width=7150;
      Height=990;
      SaveValues=Yes;
    }
    CONTROLS
    {
      { 2   ;CheckBox     ;3410 ;550  ;330  ;440  ;ShowCaption=No;
                                                   SourceExpr=OnlyOnePerPage }
      { 3   ;Label        ;0    ;550  ;3300 ;440  ;ParentControl=2;
                                                   CaptionML=[ENU=New Page per Salesperson;
                                                              ESM=Nueva p g. por vendedor;
                                                              FRC=Nouvelle page par repr‚sentant;
                                                              ENC=New Page per Salesperson] }
      { 1020000;TextBox   ;3410 ;0    ;3740 ;440  ;CaptionML=[ENU=Salesperson To Use;
                                                              ESM=Vendedor que se utilizar ;
                                                              FRC=Repr‚sentant … utiliser;
                                                              ENC=Salesperson To Use];
                                                   OptionCaptionML=[ENU=Assigned To Customer,Assigned To Sales Order;
                                                                    ESM=Asignado a cliente,Asignado a pedido venta;
                                                                    FRC=Affect‚ … client,Affect‚ … document de vente;
                                                                    ENC=Assigned To Customer,Assigned To Sales Order];
                                                   OptionString=Assigned To Customer,Assigned To Sales Order;
                                                   SourceExpr=SalespersonToUse }
      { 1020001;Label     ;0    ;0    ;3300 ;440  ;ParentControl=1020000 }
    }
  }
  CODE
  {
    VAR
      FilterString@1000 : Text[250];
      FilterString2@1001 : Text[250];
      FilterString3@1002 : Text[250];
      Profit@1003 : Decimal;
      "Profit%"@1004 : Decimal;
      OnlyOnePerPage@1005 : Boolean;
      CompanyInformation@1007 : Record 79;
      SalespersonToUse@1020000 : 'Assigned To Customer,Assigned To Sales Order';
      SalespersonString@1020001 : Text[250];
      Text001@1020002 : TextConst 'ENU=Invalid option chosen for Salesperson To Use.;ESM=Opci¢n no v lida para Vendedor que se utilizar .;FRC=Option invalide choisie pour le repr‚sentant … utiliser.;ENC=Invalid option chosen for Salesperson To Use.';
      Text002@1020003 : TextConst 'ENU=Individual sale shows under the Salesperson assigned to that Customer.;ESM=Cada venta se muestra en el vendedor asignado a ese cliente.;FRC=La vente individuelle s''affiche sous le repr‚sentant attribu‚ … ce client.;ENC=Individual sale shows under the Salesperson assigned to that Customer.';
      Text003@1020004 : TextConst 'ENU=Individual sale shows under the Salesperson assigned to that individual Sales Order.;ESM=Cada venta se muestra en el vendedor asignado al correspondiente pedido de venta.;FRC=La vente individuelle s''affiche sous le repr‚sentant attribu‚ … ce document de vente individuel.;ENC=Individual sale shows under the Salesperson assigned to that individual Sales Order.';
      Item@1000000000 : Record 27;

    PROCEDURE "CalculateProfit%"@1();
    BEGIN
      IF "Value Entry"."Sales Amount (Actual)" <> 0 THEN
        "Profit%" := ROUND(100 * Profit / "Value Entry"."Sales Amount (Actual)",0.1)
      ELSE
        "Profit%" := 0;
    END;

    BEGIN
    END.
  }
}

Any help would be greatly appreciated.

Thanks.
Half-empy or half-full how do you view your database?

Thanks.

Comments

  • SavatageSavatage Member Posts: 7,142
    I just took a quick look but this needs to be OnAfterGetRecord
    Item.GET("Value Entry"."Item No.");
    IF Item."Item Category Code" <> 'COSTUMES' THEN CurrReport.SKIP;

    Not OnPreDataItem. How Would It keep changing per record?

    Maybe on OnPreSection of the Value Entry Group Footer.

    It already has a Item.GET("Item no.")

    Perhaps if I have more time tommorrow I'll take a look some more
  • emulsifiedemulsified Member Posts: 139
    Thanks for checking out my post. I took a break and went for a walk in the brisk 24 degree weather here in Pennsylvania and it hit me.

    Just as you mentioned it needed to be in OnAfterGetRecord. Here is what I put into OnAfterGetRecord for data item Value Entry:
    // Added to show ONLY Items that have "Item Category Code" of 'COSTUMES'
    Item.GET("Value Entry"."Item No.");
    IF Item."Item Category Code" <> 'COSTUMES' THEN CurrReport.SKIP;
    
    Profit := "Sales Amount (Actual)" + "Cost Amount (Actual)";
    "Discount Amount" := -"Discount Amount";
    

    The code above works great. But I now want to add a field to the Options Tab request form. I would like to have it like the following:

    Item Category Code <Item Category Code list from Item Table>

    I am thinking I should create the following:

    Textbox with SourceExpression of ItemCategoryCode
    Global variable: ItemCategoryCode of type Option

    I'm not sure how to populate the OptionString and OptionCaption values as when I try to use "Item Category".Code in the OptionString field and "Item Category".Description in the OptionCaption I get literally what I filled them in with in the request form and not the list from the "Item Category" table field.

    I would like to also be able to do a wildcard match, say we have these categories: LEATHER SA, LEATHER TH, LEATHER BR, COSTUMES

    Let say I want to filter by LEATHER*** so that I include LEATHER SA and LEATHER TH and LEATHER BR or would I be better just linking the dropdown box lookup to "Item Category"."Code" and let users just type in whatever syntax they want like LEATHER*** or LEATHER TH|LEATHER BR|COSTUMES

    What am I doing wrong here? Am I overthinking this?

    Your help is appreciated.
    Half-empy or half-full how do you view your database?

    Thanks.
  • ara3nara3n Member Posts: 9,256
    Hello.

    Add a new Item dataitem at the bottom of the report. Call it DumyItem.

    Create a Global variable Item.

    Onprereport of
    Item.copyfilters(DummyItem);


    Onaftergetrecord of value entry

    item.setrange("item No.");
    if not Item.findfirst then
    curreport.skip;



    onpredataitem of DummyItem

    CurrReport.break


    Now you can filter on any field on the item card.
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • emulsifiedemulsified Member Posts: 139
    I see what you are saying. I tried the code you recommended, however when I tried to compile I get the error:

    A field from a record variable was expected. For example:

    Record.Field
    Customer.Name


    Where might the problem be?
    Half-empy or half-full how do you view your database?

    Thanks.
  • ara3nara3n Member Posts: 9,256
    at what line after the error is the cursor stopping?
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
Sign In or Register to comment.