OBJECT Table 27 Item { OBJECT-PROPERTIES { Date=09-10-16; Time=18:17:12; Modified=Yes; Version List=NAVW110.0,MediaAndMediaSet; } PROPERTIES { Permissions=; DataCaptionFields=No.,Description; OnInsert=VAR DocumentNoVisibility@1000 : Codeunit 1400; BEGIN IF "No." = '' THEN IF DocumentNoVisibility.ItemNoSeriesIsDefault THEN BEGIN GetInvtSetup; NoSeriesMgt.InitSeries(InvtSetup."Item Nos.",xRec."No. Series",0D,"No.","No. Series"); END; DimMgt.UpdateDefaultDim( DATABASE::Item,"No.", "Global Dimension 1 Code","Global Dimension 2 Code"); SetLastDateTimeModified; END; OnModify=BEGIN SetLastDateTimeModified; PlanningAssignment.ItemChange(Rec,xRec); END; OnDelete=BEGIN ApprovalsMgmt.OnCancelItemApprovalRequest(Rec); CheckJournalsAndWorksheets(0); CheckDocuments(0); MoveEntries.MoveItemEntries(Rec); ServiceItem.RESET; ServiceItem.SETRANGE("Item No.","No."); IF ServiceItem.FIND('-') THEN REPEAT ServiceItem.VALIDATE("Item No.",''); ServiceItem.MODIFY(TRUE); UNTIL ServiceItem.NEXT = 0; DeleteRelatedData; END; OnRename=BEGIN ApprovalsMgmt.RenameApprovalEntries(xRec.RECORDID,RECORDID); SetLastDateTimeModified; END; CaptionML=ENU=Item; LookupPageID=Page31; DrillDownPageID=Page31; } FIELDS { { 1 ; ;No. ;Code20 ;OnValidate=BEGIN IF "No." <> xRec."No." THEN BEGIN GetInvtSetup; NoSeriesMgt.TestManual(InvtSetup."Item Nos."); "No. Series" := ''; END; END; AltSearchField=Search Description; CaptionML=ENU=No. } { 2 ; ;No. 2 ;Code20 ;CaptionML=ENU=No. 2 } { 3 ; ;Description ;Text50 ;OnValidate=BEGIN IF ("Search Description" = UPPERCASE(xRec.Description)) OR ("Search Description" = '') THEN "Search Description" := Description; IF "Created From Nonstock Item" THEN BEGIN NonstockItem.SETCURRENTKEY("Item No."); NonstockItem.SETRANGE("Item No.","No."); IF NonstockItem.FINDFIRST THEN IF NonstockItem.Description = '' THEN BEGIN NonstockItem.Description := Description; NonstockItem.MODIFY; END; END; END; CaptionML=ENU=Description } { 4 ; ;Search Description ;Code50 ;CaptionML=ENU=Search Description } { 5 ; ;Description 2 ;Text50 ;CaptionML=ENU=Description 2 } { 6 ; ;Assembly BOM ;Boolean ;FieldClass=FlowField; CalcFormula=Exist("BOM Component" WHERE (Parent Item No.=FIELD(No.))); CaptionML=ENU=Assembly BOM; Editable=No } { 8 ; ;Base Unit of Measure;Code10 ;TableRelation="Unit of Measure"; OnValidate=VAR UnitOfMeasure@1000 : Record 204; BEGIN IF "Base Unit of Measure" <> xRec."Base Unit of Measure" THEN BEGIN TestNoOpenEntriesExist(FIELDCAPTION("Base Unit of Measure")); "Sales Unit of Measure" := "Base Unit of Measure"; "Purch. Unit of Measure" := "Base Unit of Measure"; IF "Base Unit of Measure" <> '' THEN BEGIN UnitOfMeasure.GET("Base Unit of Measure"); IF NOT ItemUnitOfMeasure.GET("No.","Base Unit of Measure") THEN BEGIN ItemUnitOfMeasure.INIT; ItemUnitOfMeasure.VALIDATE("Item No.","No."); ItemUnitOfMeasure.VALIDATE(Code,"Base Unit of Measure"); ItemUnitOfMeasure."Qty. per Unit of Measure" := 1; ItemUnitOfMeasure.INSERT; END ELSE BEGIN IF ItemUnitOfMeasure."Qty. per Unit of Measure" <> 1 THEN ERROR(STRSUBSTNO(BaseUnitOfMeasureQtyMustBeOneErr,"Base Unit of Measure",ItemUnitOfMeasure."Qty. per Unit of Measure")); END; END; END; END; ValidateTableRelation=No; CaptionML=ENU=Base Unit of Measure } { 9 ; ;Price Unit Conversion;Integer ;CaptionML=ENU=Price Unit Conversion } { 10 ; ;Type ;Option ;OnValidate=VAR ItemLedgEntry@1000 : Record 32; BEGIN ItemLedgEntry.RESET; ItemLedgEntry.SETCURRENTKEY("Item No."); ItemLedgEntry.SETRANGE("Item No.","No."); IF NOT ItemLedgEntry.ISEMPTY THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",ItemLedgEntry.TABLECAPTION); CheckJournalsAndWorksheets(FIELDNO(Type)); CheckDocuments(FIELDNO(Type)); IF Type = Type::Service THEN BEGIN CALCFIELDS("Assembly BOM"); TESTFIELD("Assembly BOM",FALSE); CALCFIELDS("Stockkeeping Unit Exists"); TESTFIELD("Stockkeeping Unit Exists",FALSE); VALIDATE("Assembly Policy","Assembly Policy"::"Assemble-to-Stock"); VALIDATE("Replenishment System","Replenishment System"::Purchase); VALIDATE(Reserve,Reserve::Never); VALIDATE("Inventory Posting Group",''); VALIDATE("Item Tracking Code",''); VALIDATE("Costing Method","Costing Method"::FIFO); VALIDATE("Production BOM No.",''); VALIDATE("Routing No.",''); VALIDATE("Reordering Policy","Reordering Policy"::" "); VALIDATE("Order Tracking Policy","Order Tracking Policy"::None); END; END; CaptionML=ENU=Type; OptionCaptionML=ENU=Inventory,Service; OptionString=Inventory,Service } { 11 ; ;Inventory Posting Group;Code10 ;TableRelation="Inventory Posting Group"; OnValidate=BEGIN IF "Inventory Posting Group" <> '' THEN TESTFIELD(Type,Type::Inventory); END; CaptionML=ENU=Inventory Posting Group } { 12 ; ;Shelf No. ;Code10 ;CaptionML=ENU=Shelf No. } { 14 ; ;Item Disc. Group ;Code20 ;TableRelation="Item Discount Group"; CaptionML=ENU=Item Disc. Group } { 15 ; ;Allow Invoice Disc. ;Boolean ;InitValue=Yes; CaptionML=ENU=Allow Invoice Disc. } { 16 ; ;Statistics Group ;Integer ;CaptionML=ENU=Statistics Group } { 17 ; ;Commission Group ;Integer ;CaptionML=ENU=Commission Group } { 18 ; ;Unit Price ;Decimal ;OnValidate=BEGIN VALIDATE("Price/Profit Calculation"); END; CaptionML=ENU=Unit Price; MinValue=0; AutoFormatType=2 } { 19 ; ;Price/Profit Calculation;Option ;OnValidate=BEGIN CASE "Price/Profit Calculation" OF "Price/Profit Calculation"::"Profit=Price-Cost": IF "Unit Price" <> 0 THEN IF "Unit Cost" = 0 THEN "Profit %" := 0 ELSE "Profit %" := ROUND( 100 * (1 - "Unit Cost" / ("Unit Price" / (1 + CalcVAT))),0.00001) ELSE "Profit %" := 0; "Price/Profit Calculation"::"Price=Cost+Profit": IF "Profit %" < 100 THEN BEGIN GetGLSetup; "Unit Price" := ROUND( ("Unit Cost" / (1 - "Profit %" / 100)) * (1 + CalcVAT), GLSetup."Unit-Amount Rounding Precision"); END; END; END; CaptionML=ENU=Price/Profit Calculation; OptionCaptionML=ENU="Profit=Price-Cost,Price=Cost+Profit,No Relationship"; OptionString=Profit=Price-Cost,Price=Cost+Profit,No Relationship } { 20 ; ;Profit % ;Decimal ;OnValidate=BEGIN VALIDATE("Price/Profit Calculation"); END; CaptionML=ENU=Profit %; DecimalPlaces=0:5 } { 21 ; ;Costing Method ;Option ;OnValidate=BEGIN IF "Costing Method" = xRec."Costing Method" THEN EXIT; IF "Costing Method" <> "Costing Method"::FIFO THEN TESTFIELD(Type,Type::Inventory); IF "Costing Method" = "Costing Method"::Specific THEN BEGIN TESTFIELD("Item Tracking Code"); ItemTrackingCode.GET("Item Tracking Code"); IF NOT ItemTrackingCode."SN Specific Tracking" THEN ERROR( Text018, ItemTrackingCode.FIELDCAPTION("SN Specific Tracking"), FORMAT(TRUE),ItemTrackingCode.TABLECAPTION,ItemTrackingCode.Code, FIELDCAPTION("Costing Method"),"Costing Method"); END; TestNoEntriesExist(FIELDCAPTION("Costing Method")); ItemCostMgt.UpdateUnitCost(Rec,'','',0,0,FALSE,FALSE,TRUE,FIELDNO("Costing Method")); END; CaptionML=ENU=Costing Method; OptionCaptionML=ENU=FIFO,LIFO,Specific,Average,Standard; OptionString=FIFO,LIFO,Specific,Average,Standard } { 22 ; ;Unit Cost ;Decimal ;OnValidate=BEGIN IF "Costing Method" = "Costing Method"::Standard THEN VALIDATE("Standard Cost","Unit Cost") ELSE TestNoEntriesExist(FIELDCAPTION("Unit Cost")); VALIDATE("Price/Profit Calculation"); END; CaptionML=ENU=Unit Cost; MinValue=0; AutoFormatType=2 } { 24 ; ;Standard Cost ;Decimal ;OnValidate=BEGIN IF ("Costing Method" = "Costing Method"::Standard) AND (CurrFieldNo <> 0) THEN IF NOT GUIALLOWED THEN BEGIN "Standard Cost" := xRec."Standard Cost"; EXIT; END ELSE IF NOT CONFIRM( Text020 + Text021 + Text022,FALSE, FIELDCAPTION("Standard Cost")) THEN BEGIN "Standard Cost" := xRec."Standard Cost"; EXIT; END; ItemCostMgt.UpdateUnitCost(Rec,'','',0,0,FALSE,FALSE,TRUE,FIELDNO("Standard Cost")); END; CaptionML=ENU=Standard Cost; MinValue=0; AutoFormatType=2 } { 25 ; ;Last Direct Cost ;Decimal ;CaptionML=ENU=Last Direct Cost; MinValue=0; AutoFormatType=2 } { 28 ; ;Indirect Cost % ;Decimal ;OnValidate=BEGIN ItemCostMgt.UpdateUnitCost(Rec,'','',0,0,FALSE,FALSE,TRUE,FIELDNO("Indirect Cost %")); END; CaptionML=ENU=Indirect Cost %; DecimalPlaces=0:5; MinValue=0 } { 29 ; ;Cost is Adjusted ;Boolean ;InitValue=Yes; CaptionML=ENU=Cost is Adjusted; Editable=No } { 30 ; ;Allow Online Adjustment;Boolean ;InitValue=Yes; CaptionML=ENU=Allow Online Adjustment; Editable=No } { 31 ; ;Vendor No. ;Code20 ;TableRelation=Vendor; OnValidate=BEGIN IF (xRec."Vendor No." <> "Vendor No.") AND ("Vendor No." <> '') THEN IF Vend.GET("Vendor No.") THEN "Lead Time Calculation" := Vend."Lead Time Calculation"; END; ValidateTableRelation=Yes; TestTableRelation=Yes; CaptionML=ENU=Vendor No. } { 32 ; ;Vendor Item No. ;Text20 ;CaptionML=ENU=Vendor Item No. } { 33 ; ;Lead Time Calculation;DateFormula ;AccessByPermission=TableData 120=R; CaptionML=ENU=Lead Time Calculation } { 34 ; ;Reorder Point ;Decimal ;AccessByPermission=TableData 244=R; CaptionML=ENU=Reorder Point; DecimalPlaces=0:5 } { 35 ; ;Maximum Inventory ;Decimal ;AccessByPermission=TableData 244=R; CaptionML=ENU=Maximum Inventory; DecimalPlaces=0:5 } { 36 ; ;Reorder Quantity ;Decimal ;AccessByPermission=TableData 244=R; CaptionML=ENU=Reorder Quantity; DecimalPlaces=0:5 } { 37 ; ;Alternative Item No.;Code20 ;TableRelation=Item; CaptionML=ENU=Alternative Item No. } { 38 ; ;Unit List Price ;Decimal ;CaptionML=ENU=Unit List Price; MinValue=0; AutoFormatType=2 } { 39 ; ;Duty Due % ;Decimal ;CaptionML=ENU=Duty Due %; DecimalPlaces=0:5; MinValue=0; MaxValue=100 } { 40 ; ;Duty Code ;Code10 ;CaptionML=ENU=Duty Code } { 41 ; ;Gross Weight ;Decimal ;CaptionML=ENU=Gross Weight; DecimalPlaces=0:5; MinValue=0 } { 42 ; ;Net Weight ;Decimal ;CaptionML=ENU=Net Weight; DecimalPlaces=0:5; MinValue=0 } { 43 ; ;Units per Parcel ;Decimal ;CaptionML=ENU=Units per Parcel; DecimalPlaces=0:5; MinValue=0 } { 44 ; ;Unit Volume ;Decimal ;CaptionML=ENU=Unit Volume; DecimalPlaces=0:5; MinValue=0 } { 45 ; ;Durability ;Code10 ;CaptionML=ENU=Durability } { 46 ; ;Freight Type ;Code10 ;CaptionML=ENU=Freight Type } { 47 ; ;Tariff No. ;Code20 ;TableRelation="Tariff Number"; CaptionML=ENU=Tariff No. } { 48 ; ;Duty Unit Conversion;Decimal ;CaptionML=ENU=Duty Unit Conversion; DecimalPlaces=0:5 } { 49 ; ;Country/Region Purchased Code;Code10; TableRelation=Country/Region; CaptionML=ENU=Country/Region Purchased Code } { 50 ; ;Budget Quantity ;Decimal ;CaptionML=ENU=Budget Quantity; DecimalPlaces=0:5 } { 51 ; ;Budgeted Amount ;Decimal ;CaptionML=ENU=Budgeted Amount; AutoFormatType=1 } { 52 ; ;Budget Profit ;Decimal ;CaptionML=ENU=Budget Profit; AutoFormatType=1 } { 53 ; ;Comment ;Boolean ;FieldClass=FlowField; CalcFormula=Exist("Comment Line" WHERE (Table Name=CONST(Item), No.=FIELD(No.))); CaptionML=ENU=Comment; Editable=No } { 54 ; ;Blocked ;Boolean ;CaptionML=ENU=Blocked } { 55 ; ;Cost is Posted to G/L;Boolean ;FieldClass=FlowField; CalcFormula=-Exist("Post Value Entry to G/L" WHERE (Item No.=FIELD(No.))); CaptionML=ENU=Cost is Posted to G/L; Editable=No } { 62 ; ;Last Date Modified ;Date ;CaptionML=ENU=Last Date Modified; Editable=No } { 63 ; ;Last Time Modified ;Time ;CaptionML=ENU=Last Time Modified; Editable=No } { 64 ; ;Date Filter ;Date ;FieldClass=FlowFilter; CaptionML=ENU=Date Filter } { 65 ; ;Global Dimension 1 Filter;Code20 ;FieldClass=FlowFilter; TableRelation="Dimension Value".Code WHERE (Global Dimension No.=CONST(1)); CaptionML=ENU=Global Dimension 1 Filter; CaptionClass='1,3,1' } { 66 ; ;Global Dimension 2 Filter;Code20 ;FieldClass=FlowFilter; TableRelation="Dimension Value".Code WHERE (Global Dimension No.=CONST(2)); CaptionML=ENU=Global Dimension 2 Filter; CaptionClass='1,3,2' } { 67 ; ;Location Filter ;Code10 ;FieldClass=FlowFilter; TableRelation=Location; CaptionML=ENU=Location Filter } { 68 ; ;Inventory ;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Item Ledger Entry".Quantity WHERE (Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Lot No.=FIELD(Lot No. Filter), Serial No.=FIELD(Serial No. Filter))); CaptionML=ENU=Inventory; DecimalPlaces=0:5; Editable=No } { 69 ; ;Net Invoiced Qty. ;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Item Ledger Entry"."Invoiced Quantity" WHERE (Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Lot No.=FIELD(Lot No. Filter), Serial No.=FIELD(Serial No. Filter))); CaptionML=ENU=Net Invoiced Qty.; DecimalPlaces=0:5; Editable=No } { 70 ; ;Net Change ;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Item Ledger Entry".Quantity WHERE (Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Posting Date=FIELD(Date Filter), Variant Code=FIELD(Variant Filter), Lot No.=FIELD(Lot No. Filter), Serial No.=FIELD(Serial No. Filter))); CaptionML=ENU=Net Change; DecimalPlaces=0:5; Editable=No } { 71 ; ;Purchases (Qty.) ;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Item Ledger Entry"."Invoiced Quantity" WHERE (Entry Type=CONST(Purchase), Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Posting Date=FIELD(Date Filter), Lot No.=FIELD(Lot No. Filter), Serial No.=FIELD(Serial No. Filter))); CaptionML=ENU=Purchases (Qty.); DecimalPlaces=0:5; Editable=No } { 72 ; ;Sales (Qty.) ;Decimal ;FieldClass=FlowField; CalcFormula=-Sum("Value Entry"."Invoiced Quantity" WHERE (Item Ledger Entry Type=CONST(Sale), Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Posting Date=FIELD(Date Filter))); CaptionML=ENU=Sales (Qty.); DecimalPlaces=0:5; Editable=No } { 73 ; ;Positive Adjmt. (Qty.);Decimal ;FieldClass=FlowField; CalcFormula=Sum("Item Ledger Entry"."Invoiced Quantity" WHERE (Entry Type=CONST(Positive Adjmt.), Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Posting Date=FIELD(Date Filter), Lot No.=FIELD(Lot No. Filter), Serial No.=FIELD(Serial No. Filter))); CaptionML=ENU=Positive Adjmt. (Qty.); DecimalPlaces=0:5; Editable=No } { 74 ; ;Negative Adjmt. (Qty.);Decimal ;FieldClass=FlowField; CalcFormula=-Sum("Item Ledger Entry"."Invoiced Quantity" WHERE (Entry Type=CONST(Negative Adjmt.), Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Posting Date=FIELD(Date Filter), Lot No.=FIELD(Lot No. Filter), Serial No.=FIELD(Serial No. Filter))); CaptionML=ENU=Negative Adjmt. (Qty.); DecimalPlaces=0:5; Editable=No } { 77 ; ;Purchases (LCY) ;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Value Entry"."Purchase Amount (Actual)" WHERE (Item Ledger Entry Type=CONST(Purchase), Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Posting Date=FIELD(Date Filter))); CaptionML=ENU=Purchases (LCY); Editable=No; AutoFormatType=1 } { 78 ; ;Sales (LCY) ;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Value Entry"."Sales Amount (Actual)" WHERE (Item Ledger Entry Type=CONST(Sale), Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Posting Date=FIELD(Date Filter))); CaptionML=ENU=Sales (LCY); Editable=No; AutoFormatType=1 } { 79 ; ;Positive Adjmt. (LCY);Decimal ;FieldClass=FlowField; CalcFormula=Sum("Value Entry"."Cost Amount (Actual)" WHERE (Item Ledger Entry Type=CONST(Positive Adjmt.), Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Posting Date=FIELD(Date Filter))); CaptionML=ENU=Positive Adjmt. (LCY); Editable=No; AutoFormatType=1 } { 80 ; ;Negative Adjmt. (LCY);Decimal ;FieldClass=FlowField; CalcFormula=Sum("Value Entry"."Cost Amount (Actual)" WHERE (Item Ledger Entry Type=CONST(Negative Adjmt.), Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Posting Date=FIELD(Date Filter))); CaptionML=ENU=Negative Adjmt. (LCY); Editable=No; AutoFormatType=1 } { 83 ; ;COGS (LCY) ;Decimal ;FieldClass=FlowField; CalcFormula=-Sum("Value Entry"."Cost Amount (Actual)" WHERE (Item Ledger Entry Type=CONST(Sale), Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Posting Date=FIELD(Date Filter))); CaptionML=ENU=COGS (LCY); Editable=No; AutoFormatType=1 } { 84 ; ;Qty. on Purch. Order;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Purchase Line"."Outstanding Qty. (Base)" WHERE (Document Type=CONST(Order), Type=CONST(Item), No.=FIELD(No.), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Expected Receipt Date=FIELD(Date Filter))); AccessByPermission=TableData 120=R; CaptionML=ENU=Qty. on Purch. Order; DecimalPlaces=0:5; Editable=No } { 85 ; ;Qty. on Sales Order ;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Sales Line"."Outstanding Qty. (Base)" WHERE (Document Type=CONST(Order), Type=CONST(Item), No.=FIELD(No.), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Shipment Date=FIELD(Date Filter))); AccessByPermission=TableData 110=R; CaptionML=ENU=Qty. on Sales Order; DecimalPlaces=0:5; Editable=No } { 87 ; ;Price Includes VAT ;Boolean ;OnValidate=VAR VATPostingSetup@1000 : Record 325; SalesSetup@1001 : Record 311; BEGIN IF "Price Includes VAT" THEN BEGIN SalesSetup.GET; IF SalesSetup."VAT Bus. Posting Gr. (Price)" <> '' THEN "VAT Bus. Posting Gr. (Price)" := SalesSetup."VAT Bus. Posting Gr. (Price)"; VATPostingSetup.GET("VAT Bus. Posting Gr. (Price)","VAT Prod. Posting Group"); END; VALIDATE("Price/Profit Calculation"); END; CaptionML=ENU=Price Includes VAT } { 89 ; ;Drop Shipment Filter;Boolean ;FieldClass=FlowFilter; AccessByPermission=TableData 223=R; CaptionML=ENU=Drop Shipment Filter } { 90 ; ;VAT Bus. Posting Gr. (Price);Code10;TableRelation="VAT Business Posting Group"; OnValidate=BEGIN VALIDATE("Price/Profit Calculation"); END; CaptionML=ENU=VAT Bus. Posting Gr. (Price) } { 91 ; ;Gen. Prod. Posting Group;Code10 ;TableRelation="Gen. Product Posting Group"; OnValidate=BEGIN IF xRec."Gen. Prod. Posting Group" <> "Gen. Prod. Posting Group" THEN BEGIN IF CurrFieldNo <> 0 THEN IF ProdOrderExist THEN IF NOT CONFIRM( Text024 + Text022,FALSE, FIELDCAPTION("Gen. Prod. Posting Group")) THEN BEGIN "Gen. Prod. Posting Group" := xRec."Gen. Prod. Posting Group"; EXIT; END; IF GenProdPostingGrp.ValidateVatProdPostingGroup(GenProdPostingGrp,"Gen. Prod. Posting Group") THEN VALIDATE("VAT Prod. Posting Group",GenProdPostingGrp."Def. VAT Prod. Posting Group"); END; VALIDATE("Price/Profit Calculation"); END; CaptionML=ENU=Gen. Prod. Posting Group } { 92 ; ;Picture ;MediaSet ;CaptionML=ENU=Picture } { 93 ; ;Transferred (Qty.) ;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Item Ledger Entry"."Invoiced Quantity" WHERE (Entry Type=CONST(Transfer), Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Posting Date=FIELD(Date Filter), Lot No.=FIELD(Lot No. Filter), Serial No.=FIELD(Serial No. Filter))); CaptionML=ENU=Transferred (Qty.); DecimalPlaces=0:5; Editable=No } { 94 ; ;Transferred (LCY) ;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Value Entry"."Sales Amount (Actual)" WHERE (Item Ledger Entry Type=CONST(Transfer), Item No.=FIELD(No.), Global Dimension 1 Code=FIELD(Global Dimension 1 Filter), Global Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Posting Date=FIELD(Date Filter))); CaptionML=ENU=Transferred (LCY); Editable=No; AutoFormatType=1 } { 95 ; ;Country/Region of Origin Code;Code10; TableRelation=Country/Region; CaptionML=ENU=Country/Region of Origin Code } { 96 ; ;Automatic Ext. Texts;Boolean ;CaptionML=ENU=Automatic Ext. Texts } { 97 ; ;No. Series ;Code10 ;TableRelation="No. Series"; CaptionML=ENU=No. Series; Editable=No } { 98 ; ;Tax Group Code ;Code10 ;TableRelation="Tax Group"; CaptionML=ENU=Tax Group Code } { 99 ; ;VAT Prod. Posting Group;Code10 ;TableRelation="VAT Product Posting Group"; OnValidate=BEGIN VALIDATE("Price/Profit Calculation"); END; CaptionML=ENU=VAT Prod. Posting Group } { 100 ; ;Reserve ;Option ;InitValue=Optional; OnValidate=BEGIN IF Reserve <> Reserve::Never THEN TESTFIELD(Type,Type::Inventory); END; AccessByPermission=TableData 120=R; CaptionML=ENU=Reserve; OptionCaptionML=ENU=Never,Optional,Always; OptionString=Never,Optional,Always } { 101 ; ;Reserved Qty. on Inventory;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(32), Source Subtype=CONST(0), Reservation Status=CONST(Reservation), Serial No.=FIELD(Serial No. Filter), Lot No.=FIELD(Lot No. Filter), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter))); AccessByPermission=TableData 120=R; CaptionML=ENU=Reserved Qty. on Inventory; DecimalPlaces=0:5; Editable=No } { 102 ; ;Reserved Qty. on Purch. Orders;Decimal; FieldClass=FlowField; CalcFormula=Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(39), Source Subtype=CONST(1), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Expected Receipt Date=FIELD(Date Filter))); AccessByPermission=TableData 120=R; CaptionML=ENU=Reserved Qty. on Purch. Orders; DecimalPlaces=0:5; Editable=No } { 103 ; ;Reserved Qty. on Sales Orders;Decimal; FieldClass=FlowField; CalcFormula=-Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(37), Source Subtype=CONST(1), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shipment Date=FIELD(Date Filter))); AccessByPermission=TableData 110=R; CaptionML=ENU=Reserved Qty. on Sales Orders; DecimalPlaces=0:5; Editable=No } { 105 ; ;Global Dimension 1 Code;Code20 ;TableRelation="Dimension Value".Code WHERE (Global Dimension No.=CONST(1)); OnValidate=BEGIN ValidateShortcutDimCode(1,"Global Dimension 1 Code"); END; CaptionML=ENU=Global Dimension 1 Code; CaptionClass='1,1,1' } { 106 ; ;Global Dimension 2 Code;Code20 ;TableRelation="Dimension Value".Code WHERE (Global Dimension No.=CONST(2)); OnValidate=BEGIN ValidateShortcutDimCode(2,"Global Dimension 2 Code"); END; CaptionML=ENU=Global Dimension 2 Code; CaptionClass='1,1,2' } { 107 ; ;Res. Qty. on Outbound Transfer;Decimal; FieldClass=FlowField; CalcFormula=-Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(5741), Source Subtype=CONST(0), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shipment Date=FIELD(Date Filter))); AccessByPermission=TableData 5740=R; CaptionML=ENU=Res. Qty. on Outbound Transfer; DecimalPlaces=0:5; Editable=No } { 108 ; ;Res. Qty. on Inbound Transfer;Decimal; FieldClass=FlowField; CalcFormula=Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(5741), Source Subtype=CONST(1), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Expected Receipt Date=FIELD(Date Filter))); AccessByPermission=TableData 5740=R; CaptionML=ENU=Res. Qty. on Inbound Transfer; DecimalPlaces=0:5; Editable=No } { 109 ; ;Res. Qty. on Sales Returns;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(37), Source Subtype=CONST(5), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shipment Date=FIELD(Date Filter))); AccessByPermission=TableData 6660=R; CaptionML=ENU=Res. Qty. on Sales Returns; DecimalPlaces=0:5; Editable=No } { 110 ; ;Res. Qty. on Purch. Returns;Decimal;FieldClass=FlowField; CalcFormula=-Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(39), Source Subtype=CONST(5), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Expected Receipt Date=FIELD(Date Filter))); AccessByPermission=TableData 6650=R; CaptionML=ENU=Res. Qty. on Purch. Returns; DecimalPlaces=0:5; Editable=No } { 120 ; ;Stockout Warning ;Option ;CaptionML=ENU=Stockout Warning; OptionCaptionML=ENU=Default,No,Yes; OptionString=Default,No,Yes } { 121 ; ;Prevent Negative Inventory;Option ;CaptionML=ENU=Prevent Negative Inventory; OptionCaptionML=ENU=Default,No,Yes; OptionString=Default,No,Yes } { 200 ; ;Cost of Open Production Orders;Decimal; FieldClass=FlowField; CalcFormula=Sum("Prod. Order Line"."Cost Amount" WHERE (Status=FILTER(Planned|Firm Planned|Released), Item No.=FIELD(No.))); CaptionML=ENU=Cost of Open Production Orders } { 521 ; ;Application Wksh. User ID;Code128 ;CaptionML=ENU=Application Wksh. User ID } { 910 ; ;Assembly Policy ;Option ;OnValidate=BEGIN IF "Assembly Policy" = "Assembly Policy"::"Assemble-to-Order" THEN TESTFIELD("Replenishment System","Replenishment System"::Assembly); IF Type = Type::Service THEN TESTFIELD("Assembly Policy","Assembly Policy"::"Assemble-to-Stock"); END; AccessByPermission=TableData 90=R; CaptionML=ENU=Assembly Policy; OptionCaptionML=ENU=Assemble-to-Stock,Assemble-to-Order; OptionString=Assemble-to-Stock,Assemble-to-Order } { 929 ; ;Res. Qty. on Assembly Order;Decimal;FieldClass=FlowField; CalcFormula=Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(900), Source Subtype=CONST(1), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Expected Receipt Date=FIELD(Date Filter))); AccessByPermission=TableData 90=R; CaptionML=ENU=Res. Qty. on Assembly Order; DecimalPlaces=0:5; Editable=No } { 930 ; ;Res. Qty. on Asm. Comp.;Decimal ;FieldClass=FlowField; CalcFormula=-Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(901), Source Subtype=CONST(1), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shipment Date=FIELD(Date Filter))); AccessByPermission=TableData 90=R; CaptionML=ENU=Res. Qty. on Asm. Comp.; DecimalPlaces=0:5; Editable=No } { 977 ; ;Qty. on Assembly Order;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Assembly Header"."Remaining Quantity (Base)" WHERE (Document Type=CONST(Order), Item No.=FIELD(No.), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Due Date=FIELD(Date Filter))); CaptionML=ENU=Qty. on Assembly Order; DecimalPlaces=0:5; Editable=No } { 978 ; ;Qty. on Asm. Component;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Assembly Line"."Remaining Quantity (Base)" WHERE (Document Type=CONST(Order), Type=CONST(Item), No.=FIELD(No.), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Due Date=FIELD(Date Filter))); CaptionML=ENU=Qty. on Asm. Component; DecimalPlaces=0:5; Editable=No } { 1001; ;Qty. on Job Order ;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Job Planning Line"."Remaining Qty. (Base)" WHERE (Status=CONST(Order), Type=CONST(Item), No.=FIELD(No.), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Planning Date=FIELD(Date Filter))); CaptionML=ENU=Qty. on Job Order; DecimalPlaces=0:5; Editable=No } { 1002; ;Res. Qty. on Job Order;Decimal ;FieldClass=FlowField; CalcFormula=-Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(1003), Source Subtype=CONST(2), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shipment Date=FIELD(Date Filter))); AccessByPermission=TableData 167=R; CaptionML=ENU=Res. Qty. on Job Order; DecimalPlaces=0:5; Editable=No } { 1217; ;GTIN ;Code14 ;CaptionML=ENU=GTIN; Numeric=Yes } { 1700; ;Default Deferral Template Code;Code10; TableRelation="Deferral Template"."Deferral Code"; CaptionML=ENU=Default Deferral Template Code } { 5400; ;Low-Level Code ;Integer ;CaptionML=ENU=Low-Level Code; Editable=No } { 5401; ;Lot Size ;Decimal ;AccessByPermission=TableData 5405=R; CaptionML=ENU=Lot Size; DecimalPlaces=0:5; MinValue=0 } { 5402; ;Serial Nos. ;Code10 ;TableRelation="No. Series"; OnValidate=BEGIN IF "Serial Nos." <> '' THEN TESTFIELD("Item Tracking Code"); END; CaptionML=ENU=Serial Nos. } { 5403; ;Last Unit Cost Calc. Date;Date ;CaptionML=ENU=Last Unit Cost Calc. Date; Editable=No } { 5404; ;Rolled-up Material Cost;Decimal ;CaptionML=ENU=Rolled-up Material Cost; DecimalPlaces=2:5; Editable=No; AutoFormatType=2 } { 5405; ;Rolled-up Capacity Cost;Decimal ;CaptionML=ENU=Rolled-up Capacity Cost; DecimalPlaces=2:5; Editable=No; AutoFormatType=2 } { 5407; ;Scrap % ;Decimal ;AccessByPermission=TableData 5405=R; CaptionML=ENU=Scrap %; DecimalPlaces=0:2; MinValue=0; MaxValue=100 } { 5409; ;Inventory Value Zero;Boolean ;OnValidate=BEGIN CheckForProductionOutput("No."); END; CaptionML=ENU=Inventory Value Zero } { 5410; ;Discrete Order Quantity;Integer ;CaptionML=ENU=Discrete Order Quantity; MinValue=0 } { 5411; ;Minimum Order Quantity;Decimal ;AccessByPermission=TableData 244=R; CaptionML=ENU=Minimum Order Quantity; DecimalPlaces=0:5; MinValue=0 } { 5412; ;Maximum Order Quantity;Decimal ;AccessByPermission=TableData 244=R; CaptionML=ENU=Maximum Order Quantity; DecimalPlaces=0:5; MinValue=0 } { 5413; ;Safety Stock Quantity;Decimal ;AccessByPermission=TableData 244=R; CaptionML=ENU=Safety Stock Quantity; DecimalPlaces=0:5; MinValue=0 } { 5414; ;Order Multiple ;Decimal ;AccessByPermission=TableData 244=R; CaptionML=ENU=Order Multiple; DecimalPlaces=0:5; MinValue=0 } { 5415; ;Safety Lead Time ;DateFormula ;AccessByPermission=TableData 244=R; CaptionML=ENU=Safety Lead Time } { 5417; ;Flushing Method ;Option ;AccessByPermission=TableData 5405=R; CaptionML=ENU=Flushing Method; OptionCaptionML=ENU=Manual,Forward,Backward,Pick + Forward,Pick + Backward; OptionString=Manual,Forward,Backward,Pick + Forward,Pick + Backward } { 5419; ;Replenishment System;Option ;OnValidate=BEGIN IF "Replenishment System" <> "Replenishment System"::Assembly THEN TESTFIELD("Assembly Policy","Assembly Policy"::"Assemble-to-Stock"); IF "Replenishment System" <> "Replenishment System"::Purchase THEN TESTFIELD(Type,Type::Inventory); END; AccessByPermission=TableData 244=R; CaptionML=ENU=Replenishment System; OptionCaptionML=ENU=Purchase,Prod. Order,,Assembly; OptionString=Purchase,Prod. Order,,Assembly } { 5420; ;Scheduled Receipt (Qty.);Decimal ;FieldClass=FlowField; CalcFormula=Sum("Prod. Order Line"."Remaining Qty. (Base)" WHERE (Status=FILTER(Firm Planned|Released), Item No.=FIELD(No.), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Due Date=FIELD(Date Filter))); CaptionML=ENU=Scheduled Receipt (Qty.); DecimalPlaces=0:5; Editable=No } { 5421; ;Scheduled Need (Qty.);Decimal ;FieldClass=FlowField; CalcFormula=Sum("Prod. Order Component"."Remaining Qty. (Base)" WHERE (Status=FILTER(Planned..Released), Item No.=FIELD(No.), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Due Date=FIELD(Date Filter))); CaptionML=ENU=Scheduled Need (Qty.); DecimalPlaces=0:5; Editable=No } { 5422; ;Rounding Precision ;Decimal ;InitValue=1; OnValidate=BEGIN IF "Rounding Precision" <= 0 THEN FIELDERROR("Rounding Precision",Text027); END; AccessByPermission=TableData 5405=R; CaptionML=ENU=Rounding Precision; DecimalPlaces=0:5 } { 5423; ;Bin Filter ;Code20 ;FieldClass=FlowFilter; TableRelation=Bin.Code WHERE (Location Code=FIELD(Location Filter)); CaptionML=ENU=Bin Filter } { 5424; ;Variant Filter ;Code10 ;FieldClass=FlowFilter; TableRelation="Item Variant".Code WHERE (Item No.=FIELD(No.)); CaptionML=ENU=Variant Filter } { 5425; ;Sales Unit of Measure;Code10 ;TableRelation=IF (No.=FILTER(<>'')) "Item Unit of Measure".Code WHERE (Item No.=FIELD(No.)) ELSE "Unit of Measure"; CaptionML=ENU=Sales Unit of Measure } { 5426; ;Purch. Unit of Measure;Code10 ;TableRelation=IF (No.=FILTER(<>'')) "Item Unit of Measure".Code WHERE (Item No.=FIELD(No.)) ELSE "Unit of Measure"; CaptionML=ENU=Purch. Unit of Measure } { 5428; ;Time Bucket ;DateFormula ;OnValidate=BEGIN CalendarMgt.CheckDateFormulaPositive("Time Bucket"); END; AccessByPermission=TableData 244=R; CaptionML=ENU=Time Bucket } { 5429; ;Reserved Qty. on Prod. Order;Decimal; FieldClass=FlowField; CalcFormula=Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(5406), Source Subtype=FILTER(1..3), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Expected Receipt Date=FIELD(Date Filter))); AccessByPermission=TableData 5405=R; CaptionML=ENU=Reserved Qty. on Prod. Order; DecimalPlaces=0:5; Editable=No } { 5430; ;Res. Qty. on Prod. Order Comp.;Decimal; FieldClass=FlowField; CalcFormula=-Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(5407), Source Subtype=FILTER(1..3), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shipment Date=FIELD(Date Filter))); AccessByPermission=TableData 5405=R; CaptionML=ENU=Res. Qty. on Prod. Order Comp.; DecimalPlaces=0:5; Editable=No } { 5431; ;Res. Qty. on Req. Line;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(246), Source Subtype=FILTER(0), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Expected Receipt Date=FIELD(Date Filter))); AccessByPermission=TableData 244=R; CaptionML=ENU=Res. Qty. on Req. Line; DecimalPlaces=0:5; Editable=No } { 5440; ;Reordering Policy ;Option ;OnValidate=BEGIN "Include Inventory" := "Reordering Policy" IN ["Reordering Policy"::"Lot-for-Lot", "Reordering Policy"::"Maximum Qty.", "Reordering Policy"::"Fixed Reorder Qty."]; IF "Reordering Policy" <> "Reordering Policy"::" " THEN TESTFIELD(Type,Type::Inventory); END; AccessByPermission=TableData 244=R; CaptionML=ENU=Reordering Policy; OptionCaptionML=ENU=" ,Fixed Reorder Qty.,Maximum Qty.,Order,Lot-for-Lot"; OptionString=[ ,Fixed Reorder Qty.,Maximum Qty.,Order,Lot-for-Lot] } { 5441; ;Include Inventory ;Boolean ;AccessByPermission=TableData 244=R; CaptionML=ENU=Include Inventory } { 5442; ;Manufacturing Policy;Option ;AccessByPermission=TableData 244=R; CaptionML=ENU=Manufacturing Policy; OptionCaptionML=ENU=Make-to-Stock,Make-to-Order; OptionString=Make-to-Stock,Make-to-Order } { 5443; ;Rescheduling Period ;DateFormula ;OnValidate=BEGIN CalendarMgt.CheckDateFormulaPositive("Rescheduling Period"); END; AccessByPermission=TableData 244=R; CaptionML=ENU=Rescheduling Period } { 5444; ;Lot Accumulation Period;DateFormula;OnValidate=BEGIN CalendarMgt.CheckDateFormulaPositive("Lot Accumulation Period"); END; AccessByPermission=TableData 244=R; CaptionML=ENU=Lot Accumulation Period } { 5445; ;Dampener Period ;DateFormula ;OnValidate=BEGIN CalendarMgt.CheckDateFormulaPositive("Dampener Period"); END; AccessByPermission=TableData 244=R; CaptionML=ENU=Dampener Period } { 5446; ;Dampener Quantity ;Decimal ;AccessByPermission=TableData 244=R; CaptionML=ENU=Dampener Quantity; DecimalPlaces=0:5; MinValue=0 } { 5447; ;Overflow Level ;Decimal ;AccessByPermission=TableData 244=R; CaptionML=ENU=Overflow Level; DecimalPlaces=0:5; MinValue=0 } { 5449; ;Planning Transfer Ship. (Qty).;Decimal; FieldClass=FlowField; CalcFormula=Sum("Requisition Line"."Quantity (Base)" WHERE (Replenishment System=CONST(Transfer), Type=CONST(Item), No.=FIELD(No.), Variant Code=FIELD(Variant Filter), Transfer-from Code=FIELD(Location Filter), Transfer Shipment Date=FIELD(Date Filter))); CaptionML=ENU=Planning Transfer Ship. (Qty).; Editable=No } { 5450; ;Planning Worksheet (Qty.);Decimal ;FieldClass=FlowField; CalcFormula=Sum("Requisition Line"."Quantity (Base)" WHERE (Planning Line Origin=CONST(Planning), Type=CONST(Item), No.=FIELD(No.), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Due Date=FIELD(Date Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter))); CaptionML=ENU=Planning Worksheet (Qty.); Editable=No } { 5700; ;Stockkeeping Unit Exists;Boolean ;FieldClass=FlowField; CalcFormula=Exist("Stockkeeping Unit" WHERE (Item No.=FIELD(No.))); CaptionML=ENU=Stockkeeping Unit Exists; Editable=No } { 5701; ;Manufacturer Code ;Code10 ;TableRelation=Manufacturer; CaptionML=ENU=Manufacturer Code } { 5702; ;Item Category Code ;Code20 ;TableRelation="Item Category"; CaptionML=ENU=Item Category Code } { 5703; ;Created From Nonstock Item;Boolean ;AccessByPermission=TableData 5718=R; CaptionML=ENU=Created From Nonstock Item; Editable=No } { 5704; ;Product Group Code ;Code10 ;TableRelation="Product Group".Code WHERE (Item Category Code=FIELD(Item Category Code)); CaptionML=ENU=Product Group Code } { 5706; ;Substitutes Exist ;Boolean ;FieldClass=FlowField; CalcFormula=Exist("Item Substitution" WHERE (Type=CONST(Item), No.=FIELD(No.))); CaptionML=ENU=Substitutes Exist; Editable=No } { 5707; ;Qty. in Transit ;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Transfer Line"."Qty. in Transit (Base)" WHERE (Derived From Line No.=CONST(0), Item No.=FIELD(No.), Transfer-to Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Receipt Date=FIELD(Date Filter))); CaptionML=ENU=Qty. in Transit; DecimalPlaces=0:5; Editable=No } { 5708; ;Trans. Ord. Receipt (Qty.);Decimal ;FieldClass=FlowField; CalcFormula=Sum("Transfer Line"."Outstanding Qty. (Base)" WHERE (Derived From Line No.=CONST(0), Item No.=FIELD(No.), Transfer-to Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Receipt Date=FIELD(Date Filter))); CaptionML=ENU=Trans. Ord. Receipt (Qty.); DecimalPlaces=0:5; Editable=No } { 5709; ;Trans. Ord. Shipment (Qty.);Decimal;FieldClass=FlowField; CalcFormula=Sum("Transfer Line"."Outstanding Qty. (Base)" WHERE (Derived From Line No.=CONST(0), Item No.=FIELD(No.), Transfer-from Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Shipment Date=FIELD(Date Filter))); CaptionML=ENU=Trans. Ord. Shipment (Qty.); DecimalPlaces=0:5; Editable=No } { 5776; ;Qty. Assigned to ship;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Warehouse Shipment Line"."Qty. Outstanding (Base)" WHERE (Item No.=FIELD(No.), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Due Date=FIELD(Date Filter))); CaptionML=ENU=Qty. Assigned to ship; DecimalPlaces=0:5; Editable=No } { 5777; ;Qty. Picked ;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Warehouse Shipment Line"."Qty. Picked (Base)" WHERE (Item No.=FIELD(No.), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Due Date=FIELD(Date Filter))); CaptionML=ENU=Qty. Picked; DecimalPlaces=0:5; Editable=No } { 5900; ;Service Item Group ;Code10 ;TableRelation="Service Item Group".Code; OnValidate=VAR ResSkill@1000 : Record 5956; BEGIN IF xRec."Service Item Group" <> "Service Item Group" THEN BEGIN IF NOT ResSkillMgt.ChangeRelationWithGroup( ResSkill.Type::Item, "No.", ResSkill.Type::"Service Item Group", "Service Item Group", xRec."Service Item Group") THEN "Service Item Group" := xRec."Service Item Group"; END ELSE ResSkillMgt.RevalidateRelation( ResSkill.Type::Item, "No.", ResSkill.Type::"Service Item Group", "Service Item Group") END; CaptionML=ENU=Service Item Group } { 5901; ;Qty. on Service Order;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Service Line"."Outstanding Qty. (Base)" WHERE (Document Type=CONST(Order), Type=CONST(Item), No.=FIELD(No.), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Needed by Date=FIELD(Date Filter))); CaptionML=ENU=Qty. on Service Order; DecimalPlaces=0:5; Editable=No } { 5902; ;Res. Qty. on Service Orders;Decimal;FieldClass=FlowField; CalcFormula=-Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.), Source Type=CONST(5902), Source Subtype=CONST(1), Reservation Status=CONST(Reservation), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shipment Date=FIELD(Date Filter))); AccessByPermission=TableData 5900=R; CaptionML=ENU=Res. Qty. on Service Orders; DecimalPlaces=0:5; Editable=No } { 6500; ;Item Tracking Code ;Code10 ;TableRelation="Item Tracking Code"; OnValidate=BEGIN IF "Item Tracking Code" <> '' THEN TESTFIELD(Type,Type::Inventory); IF "Item Tracking Code" = xRec."Item Tracking Code" THEN EXIT; IF NOT ItemTrackingCode.GET("Item Tracking Code") THEN CLEAR(ItemTrackingCode); IF NOT ItemTrackingCode2.GET(xRec."Item Tracking Code") THEN CLEAR(ItemTrackingCode2); IF (ItemTrackingCode."SN Specific Tracking" <> ItemTrackingCode2."SN Specific Tracking") OR (ItemTrackingCode."Lot Specific Tracking" <> ItemTrackingCode2."Lot Specific Tracking") THEN TestNoEntriesExist(FIELDCAPTION("Item Tracking Code")); IF "Costing Method" = "Costing Method"::Specific THEN BEGIN TestNoEntriesExist(FIELDCAPTION("Item Tracking Code")); TESTFIELD("Item Tracking Code"); ItemTrackingCode.GET("Item Tracking Code"); IF NOT ItemTrackingCode."SN Specific Tracking" THEN ERROR( Text018, ItemTrackingCode.FIELDCAPTION("SN Specific Tracking"), FORMAT(TRUE),ItemTrackingCode.TABLECAPTION,ItemTrackingCode.Code, FIELDCAPTION("Costing Method"),"Costing Method"); END; TestNoOpenDocumentsWithTrackingExist; END; CaptionML=ENU=Item Tracking Code } { 6501; ;Lot Nos. ;Code10 ;TableRelation="No. Series"; OnValidate=BEGIN IF "Lot Nos." <> '' THEN TESTFIELD("Item Tracking Code"); END; CaptionML=ENU=Lot Nos. } { 6502; ;Expiration Calculation;DateFormula ;CaptionML=ENU=Expiration Calculation } { 6503; ;Lot No. Filter ;Code20 ;FieldClass=FlowFilter; CaptionML=ENU=Lot No. Filter } { 6504; ;Serial No. Filter ;Code20 ;FieldClass=FlowFilter; CaptionML=ENU=Serial No. Filter } { 6650; ;Qty. on Purch. Return;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Purchase Line"."Outstanding Qty. (Base)" WHERE (Document Type=CONST(Return Order), Type=CONST(Item), No.=FIELD(No.), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Expected Receipt Date=FIELD(Date Filter))); AccessByPermission=TableData 6660=R; CaptionML=ENU=Qty. on Purch. Return; DecimalPlaces=0:5; Editable=No } { 6660; ;Qty. on Sales Return;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Sales Line"."Outstanding Qty. (Base)" WHERE (Document Type=CONST(Return Order), Type=CONST(Item), No.=FIELD(No.), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Drop Shipment=FIELD(Drop Shipment Filter), Variant Code=FIELD(Variant Filter), Shipment Date=FIELD(Date Filter))); AccessByPermission=TableData 6650=R; CaptionML=ENU=Qty. on Sales Return; DecimalPlaces=0:5; Editable=No } { 7171; ;No. of Substitutes ;Integer ;FieldClass=FlowField; CalcFormula=Count("Item Substitution" WHERE (Type=CONST(Item), No.=FIELD(No.))); CaptionML=ENU=No. of Substitutes; Editable=No } { 7300; ;Warehouse Class Code;Code10 ;TableRelation="Warehouse Class"; CaptionML=ENU=Warehouse Class Code } { 7301; ;Special Equipment Code;Code10 ;TableRelation="Special Equipment"; CaptionML=ENU=Special Equipment Code } { 7302; ;Put-away Template Code;Code10 ;TableRelation="Put-away Template Header"; CaptionML=ENU=Put-away Template Code } { 7307; ;Put-away Unit of Measure Code;Code10; TableRelation=IF (No.=FILTER(<>'')) "Item Unit of Measure".Code WHERE (Item No.=FIELD(No.)) ELSE "Unit of Measure"; AccessByPermission=TableData 7340=R; CaptionML=ENU=Put-away Unit of Measure Code } { 7380; ;Phys Invt Counting Period Code;Code10; TableRelation="Phys. Invt. Counting Period"; OnValidate=VAR PhysInvtCountPeriod@1000 : Record 7381; PhysInvtCountPeriodMgt@1001 : Codeunit 7380; BEGIN IF "Phys Invt Counting Period Code" <> '' THEN BEGIN PhysInvtCountPeriod.GET("Phys Invt Counting Period Code"); PhysInvtCountPeriod.TESTFIELD("Count Frequency per Year"); IF "Phys Invt Counting Period Code" <> xRec."Phys Invt Counting Period Code" THEN BEGIN IF CurrFieldNo <> 0 THEN IF NOT CONFIRM( Text7380, FALSE, FIELDCAPTION("Phys Invt Counting Period Code"), FIELDCAPTION("Next Counting Start Date"), FIELDCAPTION("Next Counting End Date")) THEN ERROR(Text7381); PhysInvtCountPeriodMgt.CalcPeriod( "Last Counting Period Update","Next Counting Start Date","Next Counting End Date", PhysInvtCountPeriod."Count Frequency per Year", ("Last Counting Period Update" = 0D) OR ("Phys Invt Counting Period Code" <> xRec."Phys Invt Counting Period Code")); END; END ELSE BEGIN IF CurrFieldNo <> 0 THEN IF NOT CONFIRM(Text003,FALSE,FIELDCAPTION("Phys Invt Counting Period Code")) THEN ERROR(Text7381); "Next Counting Start Date" := 0D; "Next Counting End Date" := 0D; "Last Counting Period Update" := 0D; END; END; CaptionML=ENU=Phys Invt Counting Period Code } { 7381; ;Last Counting Period Update;Date ;AccessByPermission=TableData 7380=R; CaptionML=ENU=Last Counting Period Update; Editable=No } { 7383; ;Last Phys. Invt. Date;Date ;FieldClass=FlowField; CalcFormula=Max("Phys. Inventory Ledger Entry"."Posting Date" WHERE (Item No.=FIELD(No.), Phys Invt Counting Period Type=FILTER(' '|Item))); CaptionML=ENU=Last Phys. Invt. Date; Editable=No } { 7384; ;Use Cross-Docking ;Boolean ;InitValue=Yes; AccessByPermission=TableData 7302=R; CaptionML=ENU=Use Cross-Docking } { 7385; ;Next Counting Start Date;Date ;CaptionML=ENU=Next Counting Start Date; Editable=No } { 7386; ;Next Counting End Date;Date ;CaptionML=ENU=Next Counting End Date; Editable=No } { 7700; ;Identifier Code ;Code20 ;FieldClass=FlowField; CalcFormula=Lookup("Item Identifier".Code WHERE (Item No.=FIELD(No.))); CaptionML=ENU=Identifier Code; Editable=No } { 50000; ;ItemPicture ;Media } { 99000750;;Routing No. ;Code20 ;TableRelation="Routing Header"; OnValidate=BEGIN IF "Routing No." <> '' THEN TESTFIELD(Type,Type::Inventory); PlanningAssignment.RoutingReplace(Rec,xRec."Routing No."); IF "Routing No." <> xRec."Routing No." THEN ItemCostMgt.UpdateUnitCost(Rec,'','',0,0,FALSE,FALSE,TRUE,FIELDNO("Routing No.")); END; CaptionML=ENU=Routing No. } { 99000751;;Production BOM No. ;Code20 ;TableRelation="Production BOM Header"; OnValidate=VAR MfgSetup@1000 : Record 99000765; ProdBOMHeader@1001 : Record 99000771; ItemUnitOfMeasure@1003 : Record 5404; BEGIN IF "Production BOM No." <> '' THEN TESTFIELD(Type,Type::Inventory); PlanningAssignment.BomReplace(Rec,xRec."Production BOM No."); IF "Production BOM No." <> xRec."Production BOM No." THEN ItemCostMgt.UpdateUnitCost(Rec,'','',0,0,FALSE,FALSE,TRUE,FIELDNO("Production BOM No.")); IF ("Production BOM No." <> '') AND ("Production BOM No." <> xRec."Production BOM No.") THEN BEGIN ProdBOMHeader.GET("Production BOM No."); ItemUnitOfMeasure.GET("No.",ProdBOMHeader."Unit of Measure Code"); IF ProdBOMHeader.Status = ProdBOMHeader.Status::Certified THEN BEGIN MfgSetup.GET; IF MfgSetup."Dynamic Low-Level Code" THEN CODEUNIT.RUN(CODEUNIT::"Calculate Low-Level Code",Rec); END; END; END; CaptionML=ENU=Production BOM No. } { 99000752;;Single-Level Material Cost;Decimal;CaptionML=ENU=Single-Level Material Cost; Editable=No; AutoFormatType=2 } { 99000753;;Single-Level Capacity Cost;Decimal;CaptionML=ENU=Single-Level Capacity Cost; Editable=No; AutoFormatType=2 } { 99000754;;Single-Level Subcontrd. Cost;Decimal; CaptionML=ENU=Single-Level Subcontrd. Cost; Editable=No; AutoFormatType=2 } { 99000755;;Single-Level Cap. Ovhd Cost;Decimal; CaptionML=ENU=Single-Level Cap. Ovhd Cost; Editable=No; AutoFormatType=2 } { 99000756;;Single-Level Mfg. Ovhd Cost;Decimal; CaptionML=ENU=Single-Level Mfg. Ovhd Cost; Editable=No; AutoFormatType=2 } { 99000757;;Overhead Rate ;Decimal ;AccessByPermission=TableData 5405=R; CaptionML=ENU=Overhead Rate; AutoFormatType=2 } { 99000758;;Rolled-up Subcontracted Cost;Decimal; AccessByPermission=TableData 5405=R; CaptionML=ENU=Rolled-up Subcontracted Cost; Editable=No; AutoFormatType=2 } { 99000759;;Rolled-up Mfg. Ovhd Cost;Decimal ;CaptionML=ENU=Rolled-up Mfg. Ovhd Cost; Editable=No; AutoFormatType=2 } { 99000760;;Rolled-up Cap. Overhead Cost;Decimal; CaptionML=ENU=Rolled-up Cap. Overhead Cost; Editable=No; AutoFormatType=2 } { 99000761;;Planning Issues (Qty.);Decimal ;FieldClass=FlowField; CalcFormula=Sum("Planning Component"."Expected Quantity (Base)" WHERE (Item No.=FIELD(No.), Due Date=FIELD(Date Filter), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Planning Line Origin=CONST(" "))); CaptionML=ENU=Planning Issues (Qty.); DecimalPlaces=0:5; Editable=No } { 99000762;;Planning Receipt (Qty.);Decimal ;FieldClass=FlowField; CalcFormula=Sum("Requisition Line"."Quantity (Base)" WHERE (Type=CONST(Item), No.=FIELD(No.), Due Date=FIELD(Date Filter), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter))); CaptionML=ENU=Planning Receipt (Qty.); DecimalPlaces=0:5; Editable=No } { 99000765;;Planned Order Receipt (Qty.);Decimal; FieldClass=FlowField; CalcFormula=Sum("Prod. Order Line"."Remaining Qty. (Base)" WHERE (Status=CONST(Planned), Item No.=FIELD(No.), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Due Date=FIELD(Date Filter))); CaptionML=ENU=Planned Order Receipt (Qty.); DecimalPlaces=0:5; Editable=No } { 99000766;;FP Order Receipt (Qty.);Decimal ;FieldClass=FlowField; CalcFormula=Sum("Prod. Order Line"."Remaining Qty. (Base)" WHERE (Status=CONST(Firm Planned), Item No.=FIELD(No.), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Due Date=FIELD(Date Filter))); CaptionML=ENU=FP Order Receipt (Qty.); DecimalPlaces=0:5; Editable=No } { 99000767;;Rel. Order Receipt (Qty.);Decimal ;FieldClass=FlowField; CalcFormula=Sum("Prod. Order Line"."Remaining Qty. (Base)" WHERE (Status=CONST(Released), Item No.=FIELD(No.), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 2 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Due Date=FIELD(Date Filter))); CaptionML=ENU=Rel. Order Receipt (Qty.); DecimalPlaces=0:5; Editable=No } { 99000768;;Planning Release (Qty.);Decimal ;FieldClass=FlowField; CalcFormula=Sum("Requisition Line"."Quantity (Base)" WHERE (Type=CONST(Item), No.=FIELD(No.), Starting Date=FIELD(Date Filter), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter))); CaptionML=ENU=Planning Release (Qty.); DecimalPlaces=0:5; Editable=No } { 99000769;;Planned Order Release (Qty.);Decimal; FieldClass=FlowField; CalcFormula=Sum("Prod. Order Line"."Remaining Qty. (Base)" WHERE (Status=CONST(Planned), Item No.=FIELD(No.), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 1 Filter), Location Code=FIELD(Location Filter), Starting Date=FIELD(Date Filter))); CaptionML=ENU=Planned Order Release (Qty.); DecimalPlaces=0:5; Editable=No } { 99000770;;Purch. Req. Receipt (Qty.);Decimal;FieldClass=FlowField; CalcFormula=Sum("Requisition Line"."Quantity (Base)" WHERE (Type=CONST(Item), No.=FIELD(No.), Variant Code=FIELD(Variant Filter), Location Code=FIELD(Location Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Due Date=FIELD(Date Filter), Planning Line Origin=CONST(" "))); CaptionML=ENU=Purch. Req. Receipt (Qty.); DecimalPlaces=0:5; Editable=No } { 99000771;;Purch. Req. Release (Qty.);Decimal;FieldClass=FlowField; CalcFormula=Sum("Requisition Line"."Quantity (Base)" WHERE (Type=CONST(Item), No.=FIELD(No.), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Order Date=FIELD(Date Filter))); CaptionML=ENU=Purch. Req. Release (Qty.); DecimalPlaces=0:5; Editable=No } { 99000773;;Order Tracking Policy;Option ;OnValidate=VAR ReservEntry@1000 : Record 337; ActionMessageEntry@1001 : Record 99000849; TempReservationEntry@1002 : TEMPORARY Record 337; BEGIN IF "Order Tracking Policy" <> "Order Tracking Policy"::None THEN TESTFIELD(Type,Type::Inventory); IF xRec."Order Tracking Policy" = "Order Tracking Policy" THEN EXIT; IF "Order Tracking Policy" > xRec."Order Tracking Policy" THEN BEGIN MESSAGE(Text99000000 + Text99000001, SELECTSTR("Order Tracking Policy",Text99000002)); END ELSE BEGIN ActionMessageEntry.SETCURRENTKEY("Reservation Entry"); ReservEntry.SETCURRENTKEY("Item No.","Variant Code","Location Code","Reservation Status"); ReservEntry.SETRANGE("Item No.","No."); ReservEntry.SETRANGE("Reservation Status",ReservEntry."Reservation Status"::Tracking,ReservEntry."Reservation Status"::Surplus); IF ReservEntry.FIND('-') THEN REPEAT ActionMessageEntry.SETRANGE("Reservation Entry",ReservEntry."Entry No."); ActionMessageEntry.DELETEALL; IF "Order Tracking Policy" = "Order Tracking Policy"::None THEN IF ReservEntry.TrackingExists THEN BEGIN TempReservationEntry := ReservEntry; TempReservationEntry."Reservation Status" := TempReservationEntry."Reservation Status"::Surplus; TempReservationEntry.INSERT; END ELSE ReservEntry.DELETE; UNTIL ReservEntry.NEXT = 0; IF TempReservationEntry.FIND('-') THEN REPEAT ReservEntry := TempReservationEntry; ReservEntry.MODIFY; UNTIL TempReservationEntry.NEXT = 0; END; END; CaptionML=ENU=Order Tracking Policy; OptionCaptionML=ENU=None,Tracking Only,Tracking & Action Msg.; OptionString=None,Tracking Only,Tracking & Action Msg. } { 99000774;;Prod. Forecast Quantity (Base);Decimal; FieldClass=FlowField; CalcFormula=Sum("Production Forecast Entry"."Forecast Quantity (Base)" WHERE (Item No.=FIELD(No.), Production Forecast Name=FIELD(Production Forecast Name), Forecast Date=FIELD(Date Filter), Location Code=FIELD(Location Filter), Component Forecast=FIELD(Component Forecast))); CaptionML=ENU=Prod. Forecast Quantity (Base); DecimalPlaces=0:5 } { 99000775;;Production Forecast Name;Code10 ;FieldClass=FlowFilter; TableRelation="Production Forecast Name"; CaptionML=ENU=Production Forecast Name } { 99000776;;Component Forecast ;Boolean ;FieldClass=FlowFilter; CaptionML=ENU=Component Forecast } { 99000777;;Qty. on Prod. Order;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Prod. Order Line"."Remaining Qty. (Base)" WHERE (Status=FILTER(Planned..Released), Item No.=FIELD(No.), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Due Date=FIELD(Date Filter))); CaptionML=ENU=Qty. on Prod. Order; DecimalPlaces=0:5; Editable=No } { 99000778;;Qty. on Component Lines;Decimal ;FieldClass=FlowField; CalcFormula=Sum("Prod. Order Component"."Remaining Qty. (Base)" WHERE (Status=FILTER(Planned..Released), Item No.=FIELD(No.), Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter), Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter), Location Code=FIELD(Location Filter), Variant Code=FIELD(Variant Filter), Due Date=FIELD(Date Filter))); CaptionML=ENU=Qty. on Component Lines; DecimalPlaces=0:5; Editable=No } { 99000875;;Critical ;Boolean ;CaptionML=ENU=Critical } { 99008500;;Common Item No. ;Code20 ;CaptionML=ENU=Common Item No. } } KEYS { { ;No. ;Clustered=Yes } { ;Search Description } { ;Inventory Posting Group } { ;Shelf No. } { ;Vendor No. } { ;Gen. Prod. Posting Group } { ;Low-Level Code } { ;Production BOM No. } { ;Routing No. } { ;Vendor Item No.,Vendor No. } { ;Common Item No. } { ;Service Item Group } { ;Cost is Adjusted,Allow Online Adjustment } { ;Description } { ;Base Unit of Measure } { ;Type } } FIELDGROUPS { { 1 ;DropDown ;No.,Description,Base Unit of Measure,Unit Price } { 2 ;Brick ;No.,Description,Inventory,Unit Price,Base Unit of Measure,Description 2,ItemPicture } } CODE { VAR Text000@1000 : TextConst 'ENU=You cannot delete %1 %2 because there is at least one outstanding Purchase %3 that includes this item.'; Text001@1001 : TextConst 'ENU=You cannot delete %1 %2 because there is at least one outstanding Sales %3 that includes this item.'; Text002@1002 : TextConst 'ENU=You cannot delete %1 %2 because there are one or more outstanding production orders that include this item.'; Text003@1057 : TextConst 'ENU=Do you want to change %1?'; Text004@1064 : TextConst 'ENU=You cannot delete %1 %2 because there are one or more certified Production BOM that include this item.'; Text006@1003 : TextConst 'ENU=Prices including VAT cannot be calculated when %1 is %2.'; Text007@1004 : TextConst 'ENU=You cannot change %1 because there are one or more ledger entries for this item.'; Text008@1005 : TextConst 'ENU=You cannot change %1 because there is at least one outstanding Purchase %2 that include this item.'; Text014@1006 : TextConst 'ENU=You cannot delete %1 %2 because there are one or more production order component lines that include this item with a remaining quantity that is not 0.'; Text016@1008 : TextConst 'ENU=You cannot delete %1 %2 because there are one or more outstanding transfer orders that include this item.'; Text017@1009 : TextConst 'ENU=You cannot delete %1 %2 because there is at least one outstanding Service %3 that includes this item.'; Text018@1010 : TextConst 'ENU=%1 must be %2 in %3 %4 when %5 is %6.'; Text019@1011 : TextConst 'ENU=You cannot change %1 because there are one or more open ledger entries for this item.'; Text020@1012 : TextConst 'ENU="There may be orders and open ledger entries for the item. "'; Text021@1013 : TextConst 'ENU=If you change %1 it may affect new orders and entries.\\'; Text022@1014 : TextConst 'ENU=Do you want to change %1?'; GLSetup@1053 : Record 98; InvtSetup@1015 : Record 313; Text023@1066 : TextConst 'ENU=You cannot delete %1 %2 because there is at least one %3 that includes this item.'; Text024@1072 : TextConst 'ENU=If you change %1 it may affect existing production orders.\'; Text025@1055 : TextConst 'ENU=%1 must be an integer because %2 %3 is set up to use %4.'; Text026@1077 : TextConst 'ENU=%1 cannot be changed because the %2 has work in process (WIP). Changing the value may offset the WIP account.'; Text7380@1058 : TextConst '@@@=If you change the Phys Invt Counting Period Code, the Next Counting Start Date and Next Counting End Date are calculated.\Do you still want to change the Phys Invt Counting Period Code?;ENU=If you change the %1, the %2 and %3 are calculated.\Do you still want to change the %1?'; Text7381@1056 : TextConst 'ENU=Cancelled.'; Text99000000@1017 : TextConst 'ENU=The change will not affect existing entries.\'; CommentLine@1018 : Record 97; Text99000001@1019 : TextConst 'ENU=If you want to generate %1 for existing entries, you must run a regenerative planning.'; ItemVend@1020 : Record 99; Text99000002@1021 : TextConst 'ENU=tracking,tracking and action messages'; SalesPrice@1022 : Record 7002; SalesLineDisc@1059 : Record 7004; SalesPrepmtPct@1051 : Record 459; PurchPrice@1060 : Record 7012; PurchLineDisc@1061 : Record 7014; PurchPrepmtPct@1076 : Record 460; ItemTranslation@1023 : Record 30; BOMComp@1024 : Record 90; PurchOrderLine@1025 : Record 39; SalesOrderLine@1026 : Record 37; VATPostingSetup@1027 : Record 325; ExtTextHeader@1028 : Record 279; GenProdPostingGrp@1029 : Record 251; ItemUnitOfMeasure@1030 : Record 5404; ItemVariant@1031 : Record 5401; ItemJnlLine@1007 : Record 83; ProdOrderLine@1032 : Record 5406; ProdOrderComp@1033 : Record 5407; PlanningAssignment@1035 : Record 99000850; SKU@1036 : Record 5700; ItemTrackingCode@1037 : Record 6502; ItemTrackingCode2@1038 : Record 6502; ServInvLine@1039 : Record 5902; ItemSub@1040 : Record 5715; TransLine@1042 : Record 5741; Vend@1016 : Record 23; NonstockItem@1034 : Record 5718; ProdBOMHeader@1062 : Record 99000771; ProdBOMLine@1063 : Record 99000772; ItemIdent@1065 : Record 7704; RequisitionLine@1067 : Record 246; ItemBudgetEntry@1075 : Record 7134; ItemAnalysisViewEntry@1074 : Record 7154; ItemAnalysisBudgViewEntry@1073 : Record 7156; TroubleshSetup@1050 : Record 5945; ServiceItem@1068 : Record 5940; ServiceContractLine@1069 : Record 5964; ServiceItemComponent@1070 : Record 5941; NoSeriesMgt@1043 : Codeunit 396; MoveEntries@1044 : Codeunit 361; DimMgt@1045 : Codeunit 408; NonstockItemMgt@1046 : Codeunit 5703; ItemCostMgt@1047 : Codeunit 5804; ResSkillMgt@1071 : Codeunit 5931; CalendarMgt@1054 : Codeunit 7600; ApprovalsMgmt@1085 : Codeunit 1535; HasInvtSetup@1049 : Boolean; GLSetupRead@1052 : Boolean; Text027@1078 : TextConst '@@@=starts with "Rounding Precision";ENU=must be greater than 0.'; Text028@1080 : TextConst 'ENU=You cannot perform this action because entries for item %1 are unapplied in %2 by user %3.'; CannotChangeFieldErr@1079 : TextConst '@@@="%1 = Field Caption, %2 = Item Table Name, %3 = Item No., %4 = Table Name";ENU=You cannot change the %1 field on %2 %3 because at least one %4 exists for this item.'; BaseUnitOfMeasureQtyMustBeOneErr@1081 : TextConst '@@@="%1 Name of Unit of measure (e.g. BOX, PCS, KG...), %2 Qty. of %1 per base unit of measure ";ENU=The quantity per base unit of measure must be 1. %1 is set up with %2 per unit of measure.\\You can change this setup in the Item Units of Measure window.'; OpenDocumentTrackingErr@1082 : TextConst 'ENU="You cannot change ""Item Tracking Code"" because there is at least one open document that includes this item with specified tracking: Source Type = %1, Document No. = %2."'; SelectItemErr@1083 : TextConst 'ENU=You must select an existing item.'; CreateNewItemTxt@1187 : TextConst '@@@="%1 is the name to be used to create the customer. ";ENU=Create a new item card for %1.'; ItemNotRegisteredTxt@1186 : TextConst 'ENU=This item is not registered. To continue, choose one of the following options:'; SelectItemTxt@1185 : TextConst 'ENU=Select an existing item.'; LOCAL PROCEDURE DeleteRelatedData@12(); VAR BinContent@1002 : Record 7302; ItemCrossReference@1001 : Record 5717; SocialListeningSearchTopic@1000 : Record 871; MyItem@1003 : Record 9152; BEGIN ItemBudgetEntry.SETCURRENTKEY("Analysis Area","Budget Name","Item No."); ItemBudgetEntry.SETRANGE("Item No.","No."); ItemBudgetEntry.DELETEALL(TRUE); ItemSub.RESET; ItemSub.SETRANGE(Type,ItemSub.Type::Item); ItemSub.SETRANGE("No.","No."); ItemSub.DELETEALL; ItemSub.RESET; ItemSub.SETRANGE("Substitute Type",ItemSub."Substitute Type"::Item); ItemSub.SETRANGE("Substitute No.","No."); ItemSub.DELETEALL; SKU.RESET; SKU.SETCURRENTKEY("Item No."); SKU.SETRANGE("Item No.","No."); SKU.DELETEALL; NonstockItemMgt.NonstockItemDel(Rec); CommentLine.SETRANGE("Table Name",CommentLine."Table Name"::Item); CommentLine.SETRANGE("No.","No."); CommentLine.DELETEALL; ItemVend.SETCURRENTKEY("Item No."); ItemVend.SETRANGE("Item No.","No."); ItemVend.DELETEALL; SalesPrice.SETRANGE("Item No.","No."); SalesPrice.DELETEALL; SalesLineDisc.SETRANGE(Type,SalesLineDisc.Type::Item); SalesLineDisc.SETRANGE(Code,"No."); SalesLineDisc.DELETEALL; SalesPrepmtPct.SETRANGE("Item No.","No."); SalesPrepmtPct.DELETEALL; PurchPrice.SETRANGE("Item No.","No."); PurchPrice.DELETEALL; PurchLineDisc.SETRANGE("Item No.","No."); PurchLineDisc.DELETEALL; PurchPrepmtPct.SETRANGE("Item No.","No."); PurchPrepmtPct.DELETEALL; ItemTranslation.SETRANGE("Item No.","No."); ItemTranslation.DELETEALL; ItemUnitOfMeasure.SETRANGE("Item No.","No."); ItemUnitOfMeasure.DELETEALL; ItemVariant.SETRANGE("Item No.","No."); ItemVariant.DELETEALL; ExtTextHeader.SETRANGE("Table Name",ExtTextHeader."Table Name"::Item); ExtTextHeader.SETRANGE("No.","No."); ExtTextHeader.DELETEALL(TRUE); ItemAnalysisViewEntry.SETRANGE("Item No.","No."); ItemAnalysisViewEntry.DELETEALL; ItemAnalysisBudgViewEntry.SETRANGE("Item No.","No."); ItemAnalysisBudgViewEntry.DELETEALL; PlanningAssignment.SETRANGE("Item No.","No."); PlanningAssignment.DELETEALL; BOMComp.RESET; BOMComp.SETRANGE("Parent Item No.","No."); BOMComp.DELETEALL; TroubleshSetup.RESET; TroubleshSetup.SETRANGE(Type,TroubleshSetup.Type::Item); TroubleshSetup.SETRANGE("No.","No."); TroubleshSetup.DELETEALL; ResSkillMgt.DeleteItemResSkills("No."); DimMgt.DeleteDefaultDim(DATABASE::Item,"No."); ItemIdent.RESET; ItemIdent.SETCURRENTKEY("Item No."); ItemIdent.SETRANGE("Item No.","No."); ItemIdent.DELETEALL; ServiceItemComponent.RESET; ServiceItemComponent.SETRANGE(Type,ServiceItemComponent.Type::Item); ServiceItemComponent.SETRANGE("No.","No."); ServiceItemComponent.MODIFYALL("No.",''); BinContent.SETCURRENTKEY("Item No."); BinContent.SETRANGE("Item No.","No."); BinContent.DELETEALL; ItemCrossReference.SETRANGE("Item No.","No."); ItemCrossReference.DELETEALL; MyItem.SETRANGE("Item No.","No."); MyItem.DELETEALL; IF NOT SocialListeningSearchTopic.ISEMPTY THEN BEGIN SocialListeningSearchTopic.FindSearchTopic(SocialListeningSearchTopic."Source Type"::Item,"No."); SocialListeningSearchTopic.DELETEALL; END; END; PROCEDURE AssistEdit@2() : Boolean; BEGIN GetInvtSetup; InvtSetup.TESTFIELD("Item Nos."); IF NoSeriesMgt.SelectSeries(InvtSetup."Item Nos.",xRec."No. Series","No. Series") THEN BEGIN NoSeriesMgt.SetSeries("No."); EXIT(TRUE); END; END; PROCEDURE FindItemVend@5(VAR ItemVend@1000 : Record 99;LocationCode@1002 : Code[10]); VAR GetPlanningParameters@1004 : Codeunit 99000855; BEGIN TESTFIELD("No."); ItemVend.RESET; ItemVend.SETRANGE("Item No.","No."); ItemVend.SETRANGE("Vendor No.",ItemVend."Vendor No."); ItemVend.SETRANGE("Variant Code",ItemVend."Variant Code"); IF NOT ItemVend.FIND('+') THEN BEGIN ItemVend."Item No." := "No."; ItemVend."Vendor Item No." := ''; GetPlanningParameters.AtSKU(SKU,"No.",ItemVend."Variant Code",LocationCode); IF ItemVend."Vendor No." = '' THEN ItemVend."Vendor No." := SKU."Vendor No."; IF ItemVend."Vendor Item No." = '' THEN ItemVend."Vendor Item No." := SKU."Vendor Item No."; ItemVend."Lead Time Calculation" := SKU."Lead Time Calculation"; END; IF FORMAT(ItemVend."Lead Time Calculation") = '' THEN IF Vend.GET(ItemVend."Vendor No.") THEN ItemVend."Lead Time Calculation" := Vend."Lead Time Calculation"; ItemVend.RESET; END; LOCAL PROCEDURE ValidateShortcutDimCode@8(FieldNumber@1000 : Integer;VAR ShortcutDimCode@1001 : Code[20]); BEGIN DimMgt.ValidateDimValueCode(FieldNumber,ShortcutDimCode); DimMgt.SaveDefaultDim(DATABASE::Item,"No.",FieldNumber,ShortcutDimCode); MODIFY; END; LOCAL PROCEDURE TestNoEntriesExist@1006(CurrentFieldName@1000 : Text[100]); VAR ItemLedgEntry@1001 : Record 32; BEGIN IF "No." = '' THEN EXIT; ItemLedgEntry.SETCURRENTKEY("Item No."); ItemLedgEntry.SETRANGE("Item No.","No."); IF NOT ItemLedgEntry.ISEMPTY THEN ERROR( Text007, CurrentFieldName); PurchOrderLine.SETCURRENTKEY("Document Type",Type,"No."); PurchOrderLine.SETFILTER( "Document Type",'%1|%2', PurchOrderLine."Document Type"::Order, PurchOrderLine."Document Type"::"Return Order"); PurchOrderLine.SETRANGE(Type,PurchOrderLine.Type::Item); PurchOrderLine.SETRANGE("No.","No."); IF PurchOrderLine.FINDFIRST THEN ERROR( Text008, CurrentFieldName, PurchOrderLine."Document Type"); END; LOCAL PROCEDURE TestNoOpenEntriesExist@4(CurrentFieldName@1000 : Text[100]); VAR ItemLedgEntry@1001 : Record 32; BEGIN ItemLedgEntry.SETCURRENTKEY("Item No.",Open); ItemLedgEntry.SETRANGE("Item No.","No."); ItemLedgEntry.SETRANGE(Open,TRUE); IF NOT ItemLedgEntry.ISEMPTY THEN ERROR( Text019, CurrentFieldName); END; LOCAL PROCEDURE TestNoOpenDocumentsWithTrackingExist@42(); VAR TrackingSpecification@1000 : Record 336; ReservationEntry@1001 : Record 337; RecRef@1004 : RecordRef; SourceType@1002 : Integer; SourceID@1003 : Code[20]; BEGIN IF ItemTrackingCode2.Code = '' THEN EXIT; TrackingSpecification.SETRANGE("Item No.","No."); IF TrackingSpecification.FINDFIRST THEN BEGIN SourceType := TrackingSpecification."Source Type"; SourceID := TrackingSpecification."Source ID"; END ELSE BEGIN ReservationEntry.SETRANGE("Item No.","No."); ReservationEntry.SETFILTER("Item Tracking",'<>%1',ReservationEntry."Item Tracking"::None); IF ReservationEntry.FINDFIRST THEN BEGIN SourceType := ReservationEntry."Source Type"; SourceID := ReservationEntry."Source ID"; END; END; IF SourceType = 0 THEN EXIT; RecRef.OPEN(SourceType); ERROR(OpenDocumentTrackingErr,RecRef.CAPTION,SourceID); END; PROCEDURE ItemSKUGet@11(VAR Item@1000 : Record 27;LocationCode@1001 : Code[10];VariantCode@1002 : Code[10]); VAR SKU@1003 : Record 5700; BEGIN IF Item.GET("No.") THEN BEGIN IF SKU.GET(LocationCode,Item."No.",VariantCode) THEN Item."Shelf No." := SKU."Shelf No."; END; END; LOCAL PROCEDURE GetInvtSetup@14(); BEGIN IF NOT HasInvtSetup THEN BEGIN InvtSetup.GET; HasInvtSetup := TRUE; END; END; PROCEDURE IsMfgItem@1() : Boolean; BEGIN EXIT("Replenishment System" = "Replenishment System"::"Prod. Order"); END; PROCEDURE IsAssemblyItem@24() : Boolean; BEGIN EXIT("Replenishment System" = "Replenishment System"::Assembly); END; PROCEDURE HasBOM@18() : Boolean; BEGIN CALCFIELDS("Assembly BOM"); EXIT("Assembly BOM" OR ("Production BOM No." <> '')); END; LOCAL PROCEDURE GetGLSetup@6(); BEGIN IF NOT GLSetupRead THEN GLSetup.GET; GLSetupRead := TRUE; END; LOCAL PROCEDURE ProdOrderExist@7() : Boolean; BEGIN ProdOrderLine.SETCURRENTKEY(Status,"Item No."); ProdOrderLine.SETFILTER(Status,'..%1',ProdOrderLine.Status::Released); ProdOrderLine.SETRANGE("Item No.","No."); IF NOT ProdOrderLine.ISEMPTY THEN EXIT(TRUE); EXIT(FALSE); END; PROCEDURE CheckSerialNoQty@15(ItemNo@1000 : Code[20];FieldName@1001 : Text[30];Quantity@1002 : Decimal); VAR ItemRec@1003 : Record 27; ItemTrackingCode3@1004 : Record 6502; BEGIN IF Quantity = ROUND(Quantity,1) THEN EXIT; IF NOT ItemRec.GET(ItemNo) THEN EXIT; IF ItemRec."Item Tracking Code" = '' THEN EXIT; IF NOT ItemTrackingCode3.GET(ItemRec."Item Tracking Code") THEN EXIT; IF ItemTrackingCode3."SN Specific Tracking" THEN ERROR(Text025, FieldName, TABLECAPTION, ItemNo, ItemTrackingCode3.FIELDCAPTION("SN Specific Tracking")); END; LOCAL PROCEDURE CheckForProductionOutput@17(ItemNo@1000 : Code[20]); VAR ItemLedgEntry@1001 : Record 32; BEGIN CLEAR(ItemLedgEntry); ItemLedgEntry.SETCURRENTKEY("Item No.","Entry Type","Variant Code","Drop Shipment","Location Code","Posting Date"); ItemLedgEntry.SETRANGE("Item No.",ItemNo); ItemLedgEntry.SETRANGE("Entry Type",ItemLedgEntry."Entry Type"::Output); IF NOT ItemLedgEntry.ISEMPTY THEN ERROR(Text026,FIELDCAPTION("Inventory Value Zero"),TABLECAPTION); END; PROCEDURE CheckBlockedByApplWorksheet@19(); VAR ApplicationWorksheet@1000 : Page 521; BEGIN IF "Application Wksh. User ID" <> '' THEN ERROR(Text028,"No.",ApplicationWorksheet.CAPTION,"Application Wksh. User ID"); END; PROCEDURE ShowTimelineFromItem@20(VAR Item@1000 : Record 27); VAR ItemAvailByTimeline@1001 : Page 5540; BEGIN ItemAvailByTimeline.SetItem(Item); ItemAvailByTimeline.RUN; END; PROCEDURE ShowTimelineFromSKU@21(ItemNo@1000 : Code[20];LocationCode@1001 : Code[10];VariantCode@1002 : Code[10]); VAR Item@1003 : Record 27; BEGIN Item.GET(ItemNo); Item.SETRANGE("No.",Item."No."); Item.SETRANGE("Variant Filter",VariantCode); Item.SETRANGE("Location Filter",LocationCode); ShowTimelineFromItem(Item); END; LOCAL PROCEDURE CheckJournalsAndWorksheets@22(CurrFieldNo@1001 : Integer); BEGIN CheckItemJnlLine(CurrFieldNo); CheckStdCostWksh(CurrFieldNo); CheckReqLine(CurrFieldNo); END; LOCAL PROCEDURE CheckItemJnlLine@44(CurrFieldNo@1000 : Integer); BEGIN ItemJnlLine.SETRANGE("Item No.","No."); IF NOT ItemJnlLine.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text023,TABLECAPTION,"No.",ItemJnlLine.TABLECAPTION); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",ItemJnlLine.TABLECAPTION); END; END; LOCAL PROCEDURE CheckStdCostWksh@45(CurrFieldNo@1000 : Integer); VAR StdCostWksh@1001 : Record 5841; BEGIN StdCostWksh.RESET; StdCostWksh.SETRANGE(Type,StdCostWksh.Type::Item); StdCostWksh.SETRANGE("No.","No."); IF NOT StdCostWksh.ISEMPTY THEN IF CurrFieldNo = 0 THEN ERROR(Text023,TABLECAPTION,"No.",StdCostWksh.TABLECAPTION); END; LOCAL PROCEDURE CheckReqLine@46(CurrFieldNo@1000 : Integer); BEGIN RequisitionLine.SETCURRENTKEY(Type,"No."); RequisitionLine.SETRANGE(Type,RequisitionLine.Type::Item); RequisitionLine.SETRANGE("No.","No."); IF NOT RequisitionLine.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text023,TABLECAPTION,"No.",RequisitionLine.TABLECAPTION); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",RequisitionLine.TABLECAPTION); END; END; LOCAL PROCEDURE CheckDocuments@23(CurrFieldNo@1002 : Integer); BEGIN CheckBOM(CurrFieldNo); CheckPurchLine(CurrFieldNo); CheckSalesLine(CurrFieldNo); CheckProdOrderLine(CurrFieldNo); CheckProdOrderCompLine(CurrFieldNo); CheckPlanningCompLine(CurrFieldNo); CheckTransLine(CurrFieldNo); CheckServLine(CurrFieldNo); CheckProdBOMLine(CurrFieldNo); CheckServContractLine(CurrFieldNo); CheckAsmHeader(CurrFieldNo); CheckAsmLine(CurrFieldNo); CheckJobPlanningLine(CurrFieldNo); END; LOCAL PROCEDURE CheckBOM@25(CurrFieldNo@1000 : Integer); BEGIN BOMComp.RESET; BOMComp.SETCURRENTKEY(Type,"No."); BOMComp.SETRANGE(Type,BOMComp.Type::Item); BOMComp.SETRANGE("No.","No."); IF NOT BOMComp.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text023,TABLECAPTION,"No.",BOMComp.TABLECAPTION); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",BOMComp.TABLECAPTION); END; END; LOCAL PROCEDURE CheckPurchLine@26(CurrFieldNo@1000 : Integer); BEGIN PurchOrderLine.SETCURRENTKEY(Type,"No."); PurchOrderLine.SETRANGE(Type,PurchOrderLine.Type::Item); PurchOrderLine.SETRANGE("No.","No."); IF NOT PurchOrderLine.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text000,TABLECAPTION,"No.",PurchOrderLine."Document Type"); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",PurchOrderLine.TABLECAPTION); END; END; LOCAL PROCEDURE CheckSalesLine@28(CurrFieldNo@1000 : Integer); BEGIN SalesOrderLine.SETCURRENTKEY(Type,"No."); SalesOrderLine.SETRANGE(Type,SalesOrderLine.Type::Item); SalesOrderLine.SETRANGE("No.","No."); IF NOT SalesOrderLine.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text001,TABLECAPTION,"No.",SalesOrderLine."Document Type"); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",SalesOrderLine.TABLECAPTION); END; END; LOCAL PROCEDURE CheckProdOrderLine@39(CurrFieldNo@1000 : Integer); BEGIN IF ProdOrderExist THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text002,TABLECAPTION,"No."); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",ProdOrderLine.TABLECAPTION); END; END; LOCAL PROCEDURE CheckProdOrderCompLine@31(CurrFieldNo@1000 : Integer); BEGIN ProdOrderComp.SETCURRENTKEY(Status,"Item No."); ProdOrderComp.SETFILTER(Status,'..%1',ProdOrderComp.Status::Released); ProdOrderComp.SETRANGE("Item No.","No."); IF NOT ProdOrderComp.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text014,TABLECAPTION,"No."); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",ProdOrderComp.TABLECAPTION); END; END; LOCAL PROCEDURE CheckPlanningCompLine@38(CurrFieldNo@1000 : Integer); VAR PlanningComponent@1005 : Record 99000829; BEGIN PlanningComponent.SETCURRENTKEY("Item No.","Variant Code","Location Code","Due Date","Planning Line Origin"); PlanningComponent.SETRANGE("Item No.","No."); IF NOT PlanningComponent.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text023,TABLECAPTION,"No.",PlanningComponent.TABLECAPTION); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",PlanningComponent.TABLECAPTION); END; END; LOCAL PROCEDURE CheckTransLine@37(CurrFieldNo@1000 : Integer); BEGIN TransLine.SETCURRENTKEY("Item No."); TransLine.SETRANGE("Item No.","No."); IF NOT TransLine.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text016,TABLECAPTION,"No."); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",TransLine.TABLECAPTION); END; END; LOCAL PROCEDURE CheckServLine@36(CurrFieldNo@1000 : Integer); BEGIN ServInvLine.RESET; ServInvLine.SETCURRENTKEY(Type,"No."); ServInvLine.SETRANGE(Type,ServInvLine.Type::Item); ServInvLine.SETRANGE("No.","No."); IF NOT ServInvLine.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text017,TABLECAPTION,"No.",ServInvLine."Document Type"); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",ServInvLine.TABLECAPTION); END; END; LOCAL PROCEDURE CheckProdBOMLine@30(CurrFieldNo@1000 : Integer); BEGIN ProdBOMLine.RESET; ProdBOMLine.SETCURRENTKEY(Type,"No."); ProdBOMLine.SETRANGE(Type,ProdBOMLine.Type::Item); ProdBOMLine.SETRANGE("No.","No."); IF ProdBOMLine.FIND('-') THEN BEGIN IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",ProdBOMLine.TABLECAPTION); IF CurrFieldNo = 0 THEN REPEAT IF ProdBOMHeader.GET(ProdBOMLine."Production BOM No.") AND (ProdBOMHeader.Status = ProdBOMHeader.Status::Certified) THEN ERROR(Text004,TABLECAPTION,"No."); UNTIL ProdBOMLine.NEXT = 0; END; END; LOCAL PROCEDURE CheckServContractLine@35(CurrFieldNo@1000 : Integer); BEGIN ServiceContractLine.RESET; ServiceContractLine.SETRANGE("Item No.","No."); IF NOT ServiceContractLine.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text023,TABLECAPTION,"No.",ServiceContractLine.TABLECAPTION); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",ServiceContractLine.TABLECAPTION); END; END; LOCAL PROCEDURE CheckAsmHeader@32(CurrFieldNo@1000 : Integer); VAR AsmHeader@1004 : Record 900; BEGIN AsmHeader.SETCURRENTKEY("Document Type","Item No."); AsmHeader.SETRANGE("Item No.","No."); IF NOT AsmHeader.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text023,TABLECAPTION,"No.",AsmHeader.TABLECAPTION); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",AsmHeader.TABLECAPTION); END; END; LOCAL PROCEDURE CheckAsmLine@27(CurrFieldNo@1000 : Integer); VAR AsmLine@1003 : Record 901; BEGIN AsmLine.SETCURRENTKEY(Type,"No."); AsmLine.SETRANGE(Type,AsmLine.Type::Item); AsmLine.SETRANGE("No.","No."); IF NOT AsmLine.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text023,TABLECAPTION,"No.",AsmLine.TABLECAPTION); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",AsmLine.TABLECAPTION); END; END; PROCEDURE PreventNegativeInventory@33() : Boolean; VAR InventorySetup@1000 : Record 313; BEGIN CASE "Prevent Negative Inventory" OF "Prevent Negative Inventory"::Yes: EXIT(TRUE); "Prevent Negative Inventory"::No: EXIT(FALSE); "Prevent Negative Inventory"::Default: BEGIN InventorySetup.GET; EXIT(InventorySetup."Prevent Negative Inventory"); END; END; END; LOCAL PROCEDURE CheckJobPlanningLine@34(CurrFieldNo@1000 : Integer); VAR JobPlanningLine@1001 : Record 1003; BEGIN JobPlanningLine.SETCURRENTKEY(Type,"No."); JobPlanningLine.SETRANGE(Type,JobPlanningLine.Type::Item); JobPlanningLine.SETRANGE("No.","No."); IF NOT JobPlanningLine.ISEMPTY THEN BEGIN IF CurrFieldNo = 0 THEN ERROR(Text023,TABLECAPTION,"No.",JobPlanningLine.TABLECAPTION); IF CurrFieldNo = FIELDNO(Type) THEN ERROR(CannotChangeFieldErr,FIELDCAPTION(Type),TABLECAPTION,"No.",JobPlanningLine.TABLECAPTION); END; END; LOCAL PROCEDURE CalcVAT@40() : Decimal; BEGIN IF "Price Includes VAT" THEN BEGIN VATPostingSetup.GET("VAT Bus. Posting Gr. (Price)","VAT Prod. Posting Group"); CASE VATPostingSetup."VAT Calculation Type" OF VATPostingSetup."VAT Calculation Type"::"Reverse Charge VAT": VATPostingSetup."VAT %" := 0; VATPostingSetup."VAT Calculation Type"::"Sales Tax": ERROR( Text006, VATPostingSetup.FIELDCAPTION("VAT Calculation Type"), VATPostingSetup."VAT Calculation Type"); END; END ELSE CLEAR(VATPostingSetup); EXIT(VATPostingSetup."VAT %" / 100); END; PROCEDURE CalcUnitPriceExclVAT@41() : Decimal; BEGIN GetGLSetup; IF 1 + CalcVAT = 0 THEN EXIT(0); EXIT(ROUND("Unit Price" / (1 + CalcVAT),GLSetup."Unit-Amount Rounding Precision")); END; PROCEDURE GetItemNo@10(ItemText@1000 : Text) : Code[20]; VAR ItemNo@1001 : Text[50]; BEGIN TryGetItemNo(ItemNo,ItemText,TRUE); EXIT(COPYSTR(ItemNo,1,MAXSTRLEN("No."))); END; PROCEDURE TryGetItemNo@9(VAR ReturnValue@1007 : Text[50];ItemText@1000 : Text;DefaultCreate@1006 : Boolean) : Boolean; BEGIN EXIT(TryGetItemNoOpenCard(ReturnValue,ItemText,DefaultCreate,TRUE)); END; PROCEDURE TryGetItemNoOpenCard@43(VAR ReturnValue@1007 : Text[50];ItemText@1000 : Text;DefaultCreate@1006 : Boolean;ShowItemCard@1008 : Boolean) : Boolean; VAR Item@1001 : Record 27; ItemNo@1002 : Code[20]; ItemWithoutQuote@1005 : Text; ItemFilterFromStart@1004 : Text; ItemFilterContains@1003 : Text; BEGIN ReturnValue := COPYSTR(ItemText,1,MAXSTRLEN(ReturnValue)); IF ItemText = '' THEN EXIT(DefaultCreate); IF STRLEN(ItemText) <= MAXSTRLEN(Item."No.") THEN IF Item.GET(COPYSTR(ItemText,1,MAXSTRLEN(Item."No."))) THEN BEGIN ReturnValue := Item."No."; EXIT(TRUE); END; ItemWithoutQuote := CONVERTSTR(ItemText,'''','?'); Item.SETFILTER(Description,'''@' + ItemWithoutQuote + ''''); IF Item.FINDFIRST THEN BEGIN ReturnValue := Item."No."; EXIT(TRUE); END; Item.SETRANGE(Description); ItemFilterFromStart := '''@' + ItemWithoutQuote + '*'''; Item.FILTERGROUP := -1; Item.SETFILTER("No.",ItemFilterFromStart); Item.SETFILTER(Description,ItemFilterFromStart); IF Item.FINDFIRST THEN BEGIN ReturnValue := Item."No."; EXIT(TRUE); END; ItemFilterContains := '''@*' + ItemWithoutQuote + '*'''; Item.SETFILTER("No.",ItemFilterContains); Item.SETFILTER(Description,ItemFilterContains); Item.SETFILTER("Base Unit of Measure",ItemFilterContains); IF Item.COUNT = 0 THEN MarkItemsWithSimilarName(Item,ItemText); IF Item.COUNT = 1 THEN BEGIN Item.FINDFIRST; ReturnValue := Item."No."; EXIT(TRUE); END; IF Item.COUNT = 0 THEN BEGIN IF NOT DefaultCreate THEN EXIT(FALSE); IF NOT GUIALLOWED THEN ERROR(SelectItemErr); IF Item.WRITEPERMISSION THEN CASE STRMENU( STRSUBSTNO('%1,%2',STRSUBSTNO(CreateNewItemTxt,CONVERTSTR(ItemText,',','.')),SelectItemTxt),1,ItemNotRegisteredTxt) OF 0: ERROR(SelectItemErr); 1: BEGIN ReturnValue := CreateNewItem(COPYSTR(ItemText,1,MAXSTRLEN(Item.Description)),ShowItemCard); EXIT(TRUE); END; END; Item.RESET; END; IF NOT GUIALLOWED THEN ERROR(SelectItemErr); IF ShowItemCard THEN ItemNo := PickItem(Item) ELSE BEGIN ReturnValue := ''; EXIT(TRUE); END; IF ItemNo <> '' THEN BEGIN ReturnValue := ItemNo; EXIT(TRUE); END; IF NOT DefaultCreate THEN EXIT(FALSE); ERROR(SelectItemErr); END; LOCAL PROCEDURE MarkItemsWithSimilarName@13(VAR Item@1001 : Record 27;ItemText@1000 : Text); VAR TypeHelper@1002 : Codeunit 10; ItemCount@1003 : Integer; ItemTextLenght@1004 : Integer; Treshold@1005 : Integer; BEGIN IF ItemText = '' THEN EXIT; IF STRLEN(ItemText) > MAXSTRLEN(Item.Description) THEN EXIT; ItemTextLenght := STRLEN(ItemText); Treshold := ItemTextLenght DIV 5; IF Treshold = 0 THEN EXIT; Item.RESET; Item.ASCENDING(FALSE); // most likely to search for newest Items IF Item.FINDSET THEN REPEAT ItemCount += 1; IF ABS(ItemTextLenght - STRLEN(Item.Description)) <= Treshold THEN IF TypeHelper.TextDistance(UPPERCASE(ItemText),UPPERCASE(Item.Description)) <= Treshold THEN Item.MARK(TRUE); UNTIL Item.MARK OR (Item.NEXT = 0) OR (ItemCount > 1000); Item.MARKEDONLY(TRUE); END; LOCAL PROCEDURE CreateNewItem@3(ItemName@1000 : Text[50];ShowItemCard@1001 : Boolean) : Code[20]; VAR Item@1005 : Record 27; ItemTemplate@1006 : Record 1301; ItemCard@1002 : Page 30; BEGIN IF NOT ItemTemplate.NewItemFromTemplate(Item) THEN ERROR(SelectItemErr); Item.Description := ItemName; Item.MODIFY(TRUE); COMMIT; IF NOT ShowItemCard THEN EXIT(Item."No."); Item.SETRANGE("No.",Item."No."); ItemCard.SETTABLEVIEW(Item); IF NOT (ItemCard.RUNMODAL = ACTION::OK) THEN ERROR(SelectItemErr); EXIT(Item."No."); END; LOCAL PROCEDURE PickItem@51(VAR Item@1000 : Record 27) : Code[20]; VAR ItemList@1001 : Page 31; BEGIN IF Item.FINDSET THEN REPEAT Item.MARK(TRUE); UNTIL Item.NEXT = 0; IF Item.FINDFIRST THEN; Item.MARKEDONLY := TRUE; ItemList.SETTABLEVIEW(Item); ItemList.SETRECORD(Item); ItemList.LOOKUPMODE := TRUE; IF ItemList.RUNMODAL = ACTION::LookupOK THEN ItemList.GETRECORD(Item) ELSE CLEAR(Item); EXIT(Item."No."); END; LOCAL PROCEDURE SetLastDateTimeModified@16(); VAR DateFilterCalc@1000 : Codeunit 358; Now@1001 : DateTime; BEGIN Now := DateFilterCalc.ConvertToUtcDateTime(CURRENTDATETIME); "Last Date Modified" := DT2DATE(Now); "Last Time Modified" := DT2TIME(Now); END; PROCEDURE SetLastDateTimeFilter@29(DateFilter@1001 : DateTime); VAR DateFilterCalc@1004 : Codeunit 358; SyncDateTimeUtc@1002 : DateTime; CurrentFilterGroup@1003 : Integer; BEGIN SyncDateTimeUtc := DateFilterCalc.ConvertToUtcDateTime(DateFilter); CurrentFilterGroup := FILTERGROUP; SETFILTER("Last Date Modified",'>=%1',DT2DATE(SyncDateTimeUtc)); FILTERGROUP(-1); SETFILTER("Last Date Modified",'>%1',DT2DATE(SyncDateTimeUtc)); SETFILTER("Last Time Modified",'>%1',DT2TIME(SyncDateTimeUtc)); FILTERGROUP(CurrentFilterGroup); END; BEGIN END. } } OBJECT Codeunit 50005 Import Item Pictures { OBJECT-PROPERTIES { Date=09-10-16; Time=18:23:15; Modified=Yes; Version List=MediaAndMediaSet; } PROPERTIES { OnRun=BEGIN //ImportPictures; ImportPicturesWithStream; MESSAGE('Ready'); END; } CODE { LOCAL PROCEDURE ImportPictures@2(); VAR Item@1001 : Record 27; FileName@1000 : Text; BEGIN IF Item.FINDFIRST() THEN BEGIN REPEAT FileName := 'C:\temp\images\' + FORMAT(Item."No.") + '.jpg'; IF FILE.EXISTS(FileName) THEN BEGIN Item.ItemPicture.IMPORTFILE(FileName, 'Demo image for item ' + FORMAT(Item."No.")); Item.MODIFY; END; UNTIL Item.NEXT < 1; END; END; LOCAL PROCEDURE ImportPicturesWithStream@1(); VAR InStream@1000 : InStream; Item@1002 : Record 27; FileName@1001 : Text; ImportFile@1003 : File; BEGIN IF Item.FINDFIRST() THEN BEGIN REPEAT FileName := 'C:\temp\images\' + FORMAT(Item."No.") + '.jpg'; IF FILE.EXISTS(FileName) THEN BEGIN ImportFile.OPEN(FileName); ImportFile.CREATEINSTREAM(InStream); Item.ItemPicture.IMPORTSTREAM(InStream, 'Demo image for item ' + FORMAT(Item."No.")); Item.MODIFY; ImportFile.CLOSE; END; UNTIL Item.NEXT < 1; END; END; BEGIN END. } } OBJECT Page 31 Item List { OBJECT-PROPERTIES { Date=09-10-16; Time=18:09:01; Modified=Yes; Version List=NAVW110.0,MediaAndMediaSet; } PROPERTIES { Editable=No; CaptionML=ENU=Item List; SourceTable=Table27; PageType=List; CardPageID=Item Card; PromotedActionCategoriesML=ENU=New,Process,Report,Master Data,History,Special Prices & Discounts,Request Approval,Periodic Activities; OnOpenPage=VAR CRMIntegrationManagement@1000 : Codeunit 5330; BEGIN CRMIntegrationEnabled := CRMIntegrationManagement.IsCRMIntegrationEnabled; SetWorkflowManagementEnabledState; END; OnAfterGetRecord=BEGIN SetSocialListeningFactboxVisibility; EnableControls; END; OnAfterGetCurrRecord=VAR CRMCouplingManagement@1001 : Codeunit 5331; BEGIN SetSocialListeningFactboxVisibility; CRMIsCoupledToRecord := CRMCouplingManagement.IsRecordCoupledToCRM(RECORDID) AND CRMIntegrationEnabled; OpenApprovalEntriesExist := ApprovalsMgmt.HasOpenApprovalEntries(RECORDID); CanCancelApprovalForRecord := ApprovalsMgmt.CanCancelApprovalForRecord(RECORDID); CurrPage.ItemAttributesFactBox.PAGE.LoadItemAttributesData("No."); END; ActionList=ACTIONS { { 1900000004;0 ;ActionContainer; ActionContainerType=ActionItems } { 64 ;1 ;ActionGroup; CaptionML=ENU=Item; Image=DataEntry } { 25 ;2 ;Action ; CaptionML=ENU=&Units of Measure; ToolTipML=ENU=Set up the different units that the selected item can be traded in, such as piece, box, or hour.; ApplicationArea=#Basic,#Suite; RunObject=Page 5404; RunPageLink=Item No.=FIELD(No.); Promoted=Yes; Image=UnitOfMeasure; PromotedCategory=Category4; Scope=Repeater } { 137 ;2 ;Action ; Name=Attributes; AccessByPermission=TableData 7500=R; CaptionML=ENU=Attributes; ToolTipML=ENU=View or edit the item's attributes, such as color, size, or other characteristics that help to describe the item.; ApplicationArea=#Basic,#Suite; Promoted=Yes; Image=Category; PromotedCategory=Category4; Scope=Repeater; OnAction=BEGIN PAGE.RUNMODAL(PAGE::"Item Attribute Value Editor",Rec); CurrPage.SAVERECORD; CurrPage.ItemAttributesFactBox.PAGE.LoadItemAttributesData("No."); END; } { 138 ;2 ;Action ; Name=FilterByAttributes; AccessByPermission=TableData 7500=R; CaptionML=ENU=Filter by Attributes; ToolTipML=ENU=Find items that match specific attributes.; ApplicationArea=#Basic,#Suite; Promoted=Yes; Image=EditFilter; PromotedCategory=Category4; OnAction=VAR ItemAttributeManagement@1002 : Codeunit 7500; CloseAction@1003 : Action; FilterText@1001 : Text; FilterPageID@1000 : Integer; BEGIN FilterPageID := PAGE::"Filter Items by Attribute"; IF CURRENTCLIENTTYPE = CLIENTTYPE::Phone THEN FilterPageID := PAGE::"Filter Items by Att. Phone"; CloseAction := PAGE.RUNMODAL(FilterPageID,TempFilterItemAttributesBuffer); IF (CURRENTCLIENTTYPE <> CLIENTTYPE::Phone) AND (CloseAction <> ACTION::LookupOK) THEN EXIT; FILTERGROUP(0); FilterText := ItemAttributeManagement.FindItemsByAttribute(TempFilterItemAttributesBuffer); SETFILTER("No.",FilterText); END; } { 139 ;2 ;Action ; Name=ClearAttributes; AccessByPermission=TableData 7500=R; CaptionML=ENU=Clear Attributes Filter; ToolTipML=ENU=Remove the filter for specific item attributes.; ApplicationArea=#Basic,#Suite; Promoted=Yes; Image=RemoveFilterLines; PromotedCategory=Category4; OnAction=BEGIN TempFilterItemAttributesBuffer.RESET; TempFilterItemAttributesBuffer.DELETEALL; FILTERGROUP(0); SETRANGE("No."); END; } { 82 ;2 ;Action ; CaptionML=ENU=Cross Re&ferences; ToolTipML=ENU=Set up a customer's or vendor's own identification of the selected item. Cross-references to the customer's item number means that the item number is automatically shown on sales documents instead of the number that you use.; ApplicationArea=#Basic,#Suite; RunObject=Page 5721; RunPageLink=Item No.=FIELD(No.); Promoted=Yes; Image=Change; PromotedCategory=Category4; Scope=Repeater } { 28 ;2 ;Action ; CaptionML=ENU=E&xtended Texts; ToolTipML=ENU=Set up additional text for the description of the selected item. Extended text can be inserted under the Description field on document lines for the item.; ApplicationArea=#Suite; RunObject=Page 391; RunPageView=SORTING(Table Name,No.,Language Code,All Language Codes,Starting Date,Ending Date); RunPageLink=Table Name=CONST(Item), No.=FIELD(No.); Promoted=Yes; Image=Text; PromotedCategory=Category4; Scope=Repeater } { 27 ;2 ;Action ; CaptionML=ENU=Translations; ToolTipML=ENU=Set up translated item descriptions for the selected item. Translated item descriptions are automatically inserted on documents according to the language code.; ApplicationArea=#Basic,#Suite; RunObject=Page 35; RunPageLink=Item No.=FIELD(No.), Variant Code=CONST(); Promoted=Yes; Image=Translations; PromotedCategory=Category4; Scope=Repeater } { 90 ;2 ;Action ; Name=AdjustInventory; CaptionML=ENU=Adjust Inventory; ToolTipML=ENU=Increase or decrease the item's inventory quantity manually by entering a new quantity. Adjusting the inventory quantity manually may be relevant after a physical count or if you do not record purchased quantities.; ApplicationArea=#Basic,#Suite; Enabled=InventoryItemEditable; Image=InventoryCalculation; Scope=Repeater; OnAction=BEGIN COMMIT; PAGE.RUNMODAL(PAGE::"Adjust Inventory",Rec) END; } { 94 ;2 ;ActionGroup; CaptionML=ENU=Dimensions; Image=Dimensions } { 184 ;3 ;Action ; ShortCutKey=Shift+Ctrl+D; CaptionML=ENU=Dimensions-Single; RunObject=Page 540; RunPageLink=Table ID=CONST(27), No.=FIELD(No.); Image=Dimensions; Scope=Repeater } { 93 ;3 ;Action ; AccessByPermission=TableData 348=R; CaptionML=ENU=Dimensions-&Multiple; Image=DimensionSets; OnAction=VAR Item@1001 : Record 27; DefaultDimMultiple@1002 : Page 542; BEGIN CurrPage.SETSELECTIONFILTER(Item); DefaultDimMultiple.SetMultiItem(Item); DefaultDimMultiple.RUNMODAL; END; } { 56 ;1 ;ActionGroup; CaptionML=ENU=History; Image=History } { 84 ;2 ;ActionGroup; CaptionML=ENU=E&ntries; Image=Entries } { 14 ;3 ;Action ; ShortCutKey=Ctrl+F7; CaptionML=ENU=Ledger E&ntries; ToolTipML=ENU=View the history of positive and negative inventory changes that reflect transactions with the selected item.; ApplicationArea=#Basic,#Suite; RunObject=Page 38; RunPageView=SORTING(Item No.) ORDER(Descending); RunPageLink=Item No.=FIELD(No.); Promoted=Yes; Image=ItemLedger; PromotedCategory=Category5; Scope=Repeater } { 23 ;3 ;Action ; CaptionML=ENU=&Phys. Inventory Ledger Entries; RunObject=Page 390; RunPageView=SORTING(Item No.); RunPageLink=Item No.=FIELD(No.); Promoted=Yes; Image=PhysicalInventoryLedger; PromotedCategory=Category5; Scope=Repeater } { 120 ;1 ;ActionGroup; Name=PricesandDiscounts; CaptionML=ENU=Prices and Discounts } { 1901240604;2 ;Action ; Name=Prices_Prices; CaptionML=ENU=Special Prices; ToolTipML=ENU=Set up different prices for the selected item. An item price is automatically used on invoice lines when the specified criteria are met, such as customer, quantity, or ending date.; ApplicationArea=#Basic,#Suite; RunObject=Page 7002; RunPageView=SORTING(Item No.); RunPageLink=Item No.=FIELD(No.); Promoted=Yes; Image=Price; PromotedCategory=Category6; Scope=Repeater } { 1900869004;2 ;Action ; Name=Prices_LineDiscounts; CaptionML=ENU=Special Discounts; ToolTipML=ENU=Set up different discounts for the selected item. An item discount is automatically granted on invoice lines when the specified criteria are met, such as customer, quantity, or ending date.; ApplicationArea=#Basic,#Suite; RunObject=Page 7004; RunPageView=SORTING(Type,Code); RunPageLink=Type=CONST(Item), Code=FIELD(No.); Promoted=Yes; Image=LineDiscount; PromotedCategory=Category6; Scope=Repeater } { 133 ;2 ;Action ; Name=PricesDiscountsOverview; CaptionML=ENU=Special Prices & Discounts Overview; ApplicationArea=#Basic,#Suite; Promoted=Yes; Image=PriceWorksheet; PromotedCategory=Category6; OnAction=VAR SalesPriceAndLineDiscounts@1000 : Page 1345; BEGIN SalesPriceAndLineDiscounts.InitPage(TRUE); SalesPriceAndLineDiscounts.LoadItem(Rec); SalesPriceAndLineDiscounts.RUNMODAL; END; } { 92 ;2 ;Action ; CaptionML=ENU=Sales Price Worksheet; RunObject=Page 7023; Promoted=Yes; Image=PriceWorksheet; PromotedCategory=Category6 } { 117 ;1 ;ActionGroup; CaptionML=ENU=Periodic Activities } { 1907108104;2 ;Action ; CaptionML=ENU=Adjust Cost - Item Entries; ToolTipML=ENU=Adjust inventory values in value entries so that you use the correct adjusted cost for updating the general ledger and so that sales and profit statistics are up to date.; ApplicationArea=#Basic,#Suite; RunObject=Report 795; Promoted=Yes; Image=AdjustEntries; PromotedCategory=Category8 } { 96 ;2 ;Action ; CaptionML=ENU=Post Inventory Cost to G/L; ToolTipML=ENU=Post the quantity and value changes to the inventory in the item ledger entries and the value entries when you post inventory transactions, such as sales shipments or purchase receipts.; ApplicationArea=#Basic,#Suite; RunObject=Report 1002; Promoted=Yes; Image=PostInventoryToGL; PromotedCategory=Category8 } { 98 ;2 ;Action ; CaptionML=ENU=Physical Inventory Journal; ToolTipML=ENU=Select how you want to maintain an up-to-date record of your inventory at different locations.; ApplicationArea=#Basic,#Suite; RunObject=Page 392; Promoted=Yes; Image=PhysicalInventory; PromotedCategory=Category8 } { 119 ;2 ;Action ; CaptionML=ENU=Revaluation Journal; ToolTipML=ENU=View or edit the inventory value of items, which you can change, such as after doing a physical inventory.; ApplicationArea=#Basic,#Suite; RunObject=Page 5803; Promoted=Yes; Image=Journal; PromotedCategory=Category8 } { 88 ;1 ;ActionGroup; CaptionML=ENU=Request Approval; Image=SendApprovalRequest } { 87 ;2 ;Action ; Name=SendApprovalRequest; CaptionML=ENU=Send A&pproval Request; ToolTipML=ENU=Send an approval request.; ApplicationArea=#Suite; Promoted=Yes; Enabled=(NOT OpenApprovalEntriesExist) AND EnabledApprovalWorkflowsExist; Image=SendApprovalRequest; PromotedCategory=Category7; OnAction=VAR ApprovalsMgmt@1001 : Codeunit 1535; BEGIN IF ApprovalsMgmt.CheckItemApprovalsWorkflowEnabled(Rec) THEN ApprovalsMgmt.OnSendItemForApproval(Rec); END; } { 86 ;2 ;Action ; Name=CancelApprovalRequest; CaptionML=ENU=Cancel Approval Re? ToolTipML=ENU=Cancel the approval request.; ApplicationArea=#Suite; Promoted=Yes; Enabled=CanCancelApprovalForRecord; Image=CancelApprovalRequest; PromotedCategory=Category7; OnAction=VAR ApprovalsMgmt@1001 : Codeunit 1535; BEGIN ApprovalsMgmt.OnCancelItemApprovalRequest(Rec); END; } { 135 ;1 ;ActionGroup; CaptionML=ENU=Workflow } { 134 ;2 ;Action ; Name=CreateApprovalWorkflow; CaptionML=ENU=Create Approval Workflow; ToolTipML=ENU=Set up an approval workflow for creating or changing items, by going through a few pages that will guide you.; ApplicationArea=#Suite; Enabled=NOT EnabledApprovalWorkflowsExist; Image=CreateWorkflow; OnAction=BEGIN PAGE.RUNMODAL(PAGE::"Item Approval WF Setup Wizard"); SetWorkflowManagementEnabledState; END; } { 20 ;2 ;Action ; Name=ManageApprovalWorkflow; CaptionML=ENU=Manage Approval Workflow; ToolTipML=ENU=View or edit existing approval workflows for creating or changing items.; ApplicationArea=#Suite; Enabled=EnabledApprovalWorkflowsExist; Image=WorkflowSetup; OnAction=VAR WorkflowManagement@1000 : Codeunit 1501; BEGIN WorkflowManagement.NavigateToWorkflows(DATABASE::Item,EventFilter); SetWorkflowManagementEnabledState; END; } { 110 ;1 ;ActionGroup; CaptionML=ENU=F&unctions; Image=Action } { 111 ;2 ;Action ; AccessByPermission=TableData 5700=R; CaptionML=ENU=&Create Stockkeeping Unit; Image=CreateSKU; OnAction=VAR Item@1001 : Record 27; BEGIN Item.SETRANGE("No.","No."); REPORT.RUNMODAL(REPORT::"Create Stockkeeping Unit",TRUE,FALSE,Item); END; } { 7380 ;2 ;Action ; AccessByPermission=TableData 7380=R; CaptionML=ENU=C&alculate Counting Period; Image=CalculateCalendar; OnAction=VAR Item@1001 : Record 27; PhysInvtCountMgt@1000 : Codeunit 7380; BEGIN CurrPage.SETSELECTIONFILTER(Item); PhysInvtCountMgt.UpdateItemPhysInvtCount(Item); END; } { 1905370404;1 ;Action ; CaptionML=ENU=Requisition Worksheet; RunObject=Page 291; Image=Worksheet } { 1904344904;1 ;Action ; CaptionML=ENU=Item Journal; RunObject=Page 40; Promoted=Yes; Image=Journals; PromotedCategory=Process } { 1906716204;1 ;Action ; CaptionML=ENU=Item Reclassification Journal; RunObject=Page 393; Promoted=Yes; Image=Journals; PromotedCategory=Process } { 1902532604;1 ;Action ; CaptionML=ENU=Item Tracing; RunObject=Page 6520; Image=ItemTracing } { 1900805004;1 ;Action ; CaptionML=ENU=Adjust Item Cost/Price; RunObject=Report 794; Image=AdjustItemCost } { 1900000006;0 ;ActionContainer; ActionContainerType=Reports } { 127 ;1 ;ActionGroup; CaptionML=ENU=Assembly/Production } { 18 ;2 ;Action ; CaptionML=ENU=Assemble to Order - Sales; RunObject=Report 915; Image=Report } { 1902353206;2 ;Action ; CaptionML=ENU=Where-Used (Top Level); RunObject=Report 99000757; Image=Report } { 1907778006;2 ;Action ; CaptionML=ENU=Quantity Explosion of BOM; RunObject=Report 99000753; Image=Report } { 132 ;2 ;ActionGroup; CaptionML=ENU=Costing; Image=ItemCosts } { 1907928706;3 ;Action ; CaptionML=ENU=Inventory Valuation - WIP; RunObject=Report 5802; Image=Report } { 1905889606;3 ;Action ; CaptionML=ENU=Cost Shares Breakdown; RunObject=Report 5848; Image=Report } { 1901374406;3 ;Action ; CaptionML=ENU=Detailed Calculation; RunObject=Report 99000756; Image=Report } { 1900812706;3 ;Action ; CaptionML=ENU=Rolled-up Cost Shares; RunObject=Report 99000754; Image=Report } { 1901316306;3 ;Action ; CaptionML=ENU=Single-Level Cost Shares; RunObject=Report 99000755; Image=Report } { 128 ;1 ;ActionGroup; CaptionML=ENU=Inventory } { 1900907306;2 ;Action ; CaptionML=ENU=Inventory - List; RunObject=Report 701; Image=Report } { 1906212206;2 ;Action ; CaptionML=ENU=Inventory - Availability Plan; RunObject=Report 707; Image=ItemAvailability } { 1900430206;2 ;Action ; CaptionML=ENU=Item/Vendor Catalog; RunObject=Report 720; Image=Report } { 1907644006;2 ;Action ; CaptionML=ENU=Phys. Inventory List; RunObject=Report 722; Image=Report } { 1907253406;2 ;Action ; CaptionML=ENU=Nonstock Item Sales; RunObject=Report 5700; Image=Report } { 1905753506;2 ;Action ; CaptionML=ENU=Item Substitutions; ToolTipML=ENU=View or edit any substitute items that are set up to be traded instead of the item in case it is not available.; ApplicationArea=#Suite; RunObject=Report 5701; Image=Report } { 1905572506;2 ;Action ; CaptionML=ENU=Price List; ToolTipML=ENU=View, print, or save a list of your items and their prices, for example, to send to customers. You can create the list for specific customers, campaigns, currencies, or other criteria.; ApplicationArea=#Basic,#Suite; RunObject=Report 715; Image=Report } { 1900128906;2 ;Action ; CaptionML=ENU=Inventory Cost and Price List; ToolTipML=ENU=View, print, or save a list of your items and their price and cost information. The report specifies direct unit cost, last direct cost, unit price, profit percentage, and profit.; RunObject=Report 716; Image=Report } { 1901091106;2 ;Action ; CaptionML=ENU=Inventory Availability; ToolTipML=ENU=View, print, or save a summary of historical inventory transactions with selected items, for example, to decide when to purchase the items. The report specifies quantity on sales order, quantity on purchase order, back orders from vendors, minimum inventory, and whether there are reorders.; RunObject=Report 705; Image=Report } { 131 ;2 ;ActionGroup; CaptionML=ENU=Item Register; Image=ItemRegisters } { 1907629906;3 ;Action ; CaptionML=ENU=Item Register - Quantity; RunObject=Report 703; Image=Report } { 1902962906;3 ;Action ; CaptionML=ENU=Item Register - Value; RunObject=Report 5805; Image=Report } { 130 ;2 ;ActionGroup; CaptionML=ENU=Costing; Image=ItemCosts } { 1900730006;3 ;Action ; CaptionML=ENU=Inventory - Cost Variance; RunObject=Report 721; Image=ItemCosts } { 1904299906;3 ;Action ; CaptionML=ENU=Invt. Valuation - Cost Spec.; RunObject=Report 5801; Image=Report } { 1907846806;3 ;Action ; CaptionML=ENU=Compare List; RunObject=Report 99000758; Image=Report } { 100 ;2 ;ActionGroup; CaptionML=ENU=Inventory Details; Image=Report } { 1904068306;3 ;Action ; CaptionML=ENU=Inventory - Transaction Detail; RunObject=Report 704; Image=Report } { 1900461506;3 ;Action ; CaptionML=ENU=Item Charges - Specification; RunObject=Report 5806; Image=Report } { 1900111206;3 ;Action ; CaptionML=ENU=Item Age Composition - Qty.; ToolTipML=ENU=View, print, or save an overview of the current age composition of selected items in your inventory.; ApplicationArea=#Basic,#Suite; RunObject=Report 5807; Image=Report } { 1906747006;3 ;Action ; CaptionML=ENU=Item Expiration - Quantity; RunObject=Report 5809; Image=Report } { 102 ;2 ;ActionGroup; Name=Reports; CaptionML=ENU=Inventory Statistics; Image=Report } { 1900762706;3 ;Action ; CaptionML=ENU=Inventory - Sales Statistics; ToolTipML=ENU=View, print, or save a summary of selected items' sales per customer, for example, to analyze the profit on individual items or trends in revenues and profit. The report specifies direct unit cost, unit price, sales quantity, sales in LCY, profit percentage, and profit.; ApplicationArea=#Suite; RunObject=Report 712; Image=Report } { 1904034006;3 ;Action ; CaptionML=ENU=Inventory - Customer Sales; ToolTipML=ENU=View, print, or save a list of customers that have purchased selected items within a selected period, for example, to analyze customers' purchasing patterns. The report specifies quantity, amount, discount, profit percentage, and profit.; ApplicationArea=#Suite; RunObject=Report 713; Image=Report } { 1907930606;3 ;Action ; CaptionML=ENU=Inventory - Top 10 List; ToolTipML=ENU=View, print, or save a list of the top items by sales, quantity on hand, or inventory value. The report includes a bar graph to show you how the items rank.; ApplicationArea=#Basic,#Suite; RunObject=Report 711; Image=Report } { 104 ;2 ;ActionGroup; CaptionML=ENU=Finance Reports; Image=Report } { 1906316306;3 ;Action ; CaptionML=ENU=Inventory Valuation; ToolTipML=ENU=View, print, or save a list of the values of the on-hand quantity of each inventory item.; ApplicationArea=#Basic,#Suite; RunObject=Report 1001; Image=Report } { 1901254106;3 ;Action ; CaptionML=ENU=Status; ToolTipML=ENU=View, print, or save the status of partially filled or unfilled orders so you can determine what effect filling these orders may have on your inventory.; ApplicationArea=#Basic,#Suite; RunObject=Report 706; Image=Report } { 1903496006;3 ;Action ; CaptionML=ENU=Item Age Composition - Value; ToolTipML=ENU=View, print, or save an overview of the current age composition of selected items in your inventory.; RunObject=Report 5808; Image=Report } { 129 ;1 ;ActionGroup; CaptionML=ENU=Orders } { 1903262806;2 ;Action ; CaptionML=ENU=Inventory Order Details; RunObject=Report 708; Image=Report } { 1904739806;2 ;Action ; CaptionML=ENU=Inventory Purchase Orders; RunObject=Report 709; Image=Report } { 1906231806;2 ;Action ; CaptionML=ENU=Inventory - Vendor Purchases; RunObject=Report 714; Image=Report } { 1906101206;2 ;Action ; CaptionML=ENU=Inventory - Reorders; RunObject=Report 717; Promoted=Yes; Image=Report; PromotedCategory=Report } { 1900210306;2 ;Action ; CaptionML=ENU=Inventory - Sales Back Orders; RunObject=Report 718; Promoted=Yes; Image=Report; PromotedCategory=Report } { 1900000003;0 ;ActionContainer; ActionContainerType=RelatedInformation } { 126 ;1 ;ActionGroup; CaptionML=ENU=Item } { 123 ;2 ;Action ; Name=ApprovalEntries; AccessByPermission=TableData 454=R; CaptionML=ENU=Approvals; ToolTipML=ENU=View a list of the records that are waiting to be approved. For example, you can see who requested the record to be approved, when it was sent, and when it is due to be approved.; ApplicationArea=#Suite; Image=Approvals; OnAction=BEGIN ApprovalsMgmt.OpenApprovalEntriesPage(RECORDID); END; } { 10 ;1 ;ActionGroup; CaptionML=ENU=Availability; Image=Item } { 73 ;2 ;Action ; AccessByPermission=TableData 14=R; CaptionML=ENU=Items b&y Location; ToolTipML=ENU=Show a list of items grouped by location.; Image=ItemAvailbyLoc; OnAction=BEGIN PAGE.RUN(PAGE::"Items by Location",Rec); END; } { 79 ;2 ;ActionGroup; CaptionML=ENU=&Item Availability by; Image=ItemAvailability } { 5 ;3 ;Action ; Name=; CaptionML=ENU=Event; Image=Event; OnAction=BEGIN ItemAvailFormsMgt.ShowItemAvailFromItem(Rec,ItemAvailFormsMgt.ByEvent); END; } { 21 ;3 ;Action ; CaptionML=ENU=Period; RunObject=Page 157; RunPageLink=No.=FIELD(No.), Global Dimension 1 Filter=FIELD(Global Dimension 1 Filter), Global Dimension 2 Filter=FIELD(Global Dimension 2 Filter), Location Filter=FIELD(Location Filter), Drop Shipment Filter=FIELD(Drop Shipment Filter), Variant Filter=FIELD(Variant Filter); Image=Period } { 80 ;3 ;Action ; CaptionML=ENU=Variant; RunObject=Page 5414; RunPageLink=No.=FIELD(No.), Global Dimension 1 Filter=FIELD(Global Dimension 1 Filter), Global Dimension 2 Filter=FIELD(Global Dimension 2 Filter), Location Filter=FIELD(Location Filter), Drop Shipment Filter=FIELD(Drop Shipment Filter), Variant Filter=FIELD(Variant Filter); Image=ItemVariant } { 78 ;3 ;Action ; CaptionML=ENU=Location; RunObject=Page 492; RunPageLink=No.=FIELD(No.), Global Dimension 1 Filter=FIELD(Global Dimension 1 Filter), Global Dimension 2 Filter=FIELD(Global Dimension 2 Filter), Location Filter=FIELD(Location Filter), Drop Shipment Filter=FIELD(Drop Shipment Filter), Variant Filter=FIELD(Variant Filter); Image=Warehouse } { 13 ;3 ;Action ; CaptionML=ENU=BOM Level; Image=BOMLevel; OnAction=BEGIN ItemAvailFormsMgt.ShowItemAvailFromItem(Rec,ItemAvailFormsMgt.ByBOM); END; } { 19 ;3 ;Action ; CaptionML=ENU=Timeline; Image=Timeline; OnAction=BEGIN ShowTimelineFromItem(Rec); END; } { 83 ;1 ;ActionGroup; Name=ActionGroupCRM; CaptionML=ENU=Dynamics CRM; Visible=CRMIntegrationEnabled } { 75 ;2 ;Action ; Name=CRMGoToProduct; CaptionML=ENU=Product; ToolTipML=ENU=Open the coupled Microsoft Dynamics CRM product.; ApplicationArea=#All; Image=CoupledItem; OnAction=VAR CRMIntegrationManagement@1000 : Codeunit 5330; BEGIN CRMIntegrationManagement.ShowCRMEntityFromRecordID(RECORDID); END; } { 72 ;2 ;Action ; Name=CRMSynchronizeNow; AccessByPermission=TableData 5331=IM; CaptionML=ENU=Synchronize Now; ToolTipML=ENU=Send updated data to Microsoft Dynamics CRM.; ApplicationArea=#All; Image=Refresh; OnAction=VAR Item@1000 : Record 27; CRMIntegrationManagement@1001 : Codeunit 5330; ItemRecordRef@1003 : RecordRef; BEGIN CurrPage.SETSELECTIONFILTER(Item); Item.NEXT; IF Item.COUNT = 1 THEN CRMIntegrationManagement.UpdateOneNow(Item.RECORDID) ELSE BEGIN ItemRecordRef.GETTABLE(Item); CRMIntegrationManagement.UpdateMultipleNow(ItemRecordRef); END END; } { 70 ;2 ;ActionGroup; Name=Coupling; CaptionML=[@@@=Coupling is a noun; ENU=Coupling]; ToolTipML=ENU=Create, change, or delete a coupling between the Microsoft Dynamics NAV record and a Microsoft Dynamics CRM record.; Image=LinkAccount } { 68 ;3 ;Action ; Name=ManageCRMCoupling; AccessByPermission=TableData 5331=IM; CaptionML=ENU=Set Up Coupling; ToolTipML=ENU=Create or modify the coupling to a Microsoft Dynamics CRM product.; ApplicationArea=#All; Image=LinkAccount; OnAction=VAR CRMIntegrationManagement@1000 : Codeunit 5330; BEGIN CRMIntegrationManagement.DefineCoupling(RECORDID); END; } { 66 ;3 ;Action ; Name=DeleteCRMCoupling; AccessByPermission=TableData 5331=IM; CaptionML=ENU=Delete Coupling; ToolTipML=ENU=Delete the coupling to a Microsoft Dynamics CRM product.; ApplicationArea=#All; Enabled=CRMIsCoupledToRecord; Image=UnLinkAccount; OnAction=VAR CRMCouplingManagement@1000 : Codeunit 5331; BEGIN CRMCouplingManagement.RemoveCoupling(RECORDID); END; } { 30 ;2 ;Action ; CaptionML=ENU=Va&riants; RunObject=Page 5401; RunPageLink=Item No.=FIELD(No.); Image=ItemVariant } { 500 ;2 ;Action ; CaptionML=ENU=Substituti&ons; ApplicationArea=#Suite; RunObject=Page 5716; RunPageLink=Type=CONST(Item), No.=FIELD(No.); Image=ItemSubstitution } { 121 ;2 ;Action ; CaptionML=ENU=Identifiers; RunObject=Page 7706; RunPageView=SORTING(Item No.,Variant Code,Unit of Measure Code); RunPageLink=Item No.=FIELD(No.); Image=BarCode } { 54 ;1 ;ActionGroup; Name=Assembly/Production; CaptionML=ENU=Assembly/Production; Image=Production } { 52 ;2 ;Action ; CaptionML=ENU=Structure; Image=Hierarchy; OnAction=VAR BOMStructure@1000 : Page 5870; BEGIN BOMStructure.InitItem(Rec); BOMStructure.RUN; END; } { 50 ;2 ;Action ; CaptionML=ENU=Cost Shares; Image=CostBudget; OnAction=VAR BOMCostShares@1000 : Page 5872; BEGIN BOMCostShares.InitItem(Rec); BOMCostShares.RUN; END; } { 49 ;2 ;ActionGroup; CaptionML=ENU=Assemb&ly; Image=AssemblyBOM } { 48 ;3 ;Action ; Name=; CaptionML=ENU=Assembly BOM; RunObject=Page 36; RunPageLink=Parent Item No.=FIELD(No.); Image=BOM } { 47 ;3 ;Action ; CaptionML=ENU=Where-Used; RunObject=Page 37; RunPageView=SORTING(Type,No.); RunPageLink=Type=CONST(Item), No.=FIELD(No.); Image=Track } { 46 ;3 ;Action ; AccessByPermission=TableData 90=R; CaptionML=ENU=Calc. Stan&dard Cost; Image=CalculateCost; OnAction=BEGIN CalculateStdCost.CalcItem("No.",TRUE); END; } { 44 ;3 ;Action ; AccessByPermission=TableData 90=R; CaptionML=ENU=Calc. Unit Price; Image=SuggestItemPrice; OnAction=BEGIN CalculateStdCost.CalcAssemblyItemPrice("No."); END; } { 41 ;2 ;ActionGroup; CaptionML=ENU=Production; Image=Production } { 32 ;3 ;Action ; CaptionML=ENU=Production BOM; RunObject=Page 99000786; RunPageLink=No.=FIELD(Production BOM No.); Image=BOM } { 29 ;3 ;Action ; AccessByPermission=TableData 90=R; CaptionML=ENU=Where-Used; Image=Where-Used; OnAction=VAR ProdBOMWhereUsed@1001 : Page 99000811; BEGIN ProdBOMWhereUsed.SetItem(Rec,WORKDATE); ProdBOMWhereUsed.RUNMODAL; END; } { 24 ;3 ;Action ; AccessByPermission=TableData 99000771=R; CaptionML=ENU=Calc. Stan&dard Cost; Image=CalculateCost; OnAction=BEGIN CalculateStdCost.CalcItem("No.",FALSE); END; } { 77 ;3 ;Action ; CaptionML=ENU=&Reservation Entries; RunObject=Page 497; RunPageView=SORTING(Item No.,Variant Code,Location Code,Reservation Status); RunPageLink=Reservation Status=CONST(Reservation), Item No.=FIELD(No.); Image=ReservationLedger } { 5800 ;3 ;Action ; CaptionML=ENU=&Value Entries; RunObject=Page 5802; RunPageView=SORTING(Item No.); RunPageLink=Item No.=FIELD(No.); Image=ValueLedger } { 6500 ;3 ;Action ; CaptionML=ENU=Item &Tracking Entries; Image=ItemTrackingLedger; OnAction=VAR ItemTrackingDocMgt@1000 : Codeunit 6503; BEGIN ItemTrackingDocMgt.ShowItemTrackingForMasterData(3,'',"No.",'','','',''); END; } { 7 ;3 ;Action ; CaptionML=ENU=&Warehouse Entries; RunObject=Page 7318; RunPageView=SORTING(Item No.,Bin Code,Location Code,Variant Code,Unit of Measure Code,Lot No.,Serial No.,Entry Type,Dedicated); RunPageLink=Item No.=FIELD(No.); Image=BinLedger } { 85 ;2 ;ActionGroup; CaptionML=ENU=Statistics; Image=Statistics } { 16 ;3 ;Action ; ShortCutKey=F7; CaptionML=ENU=Statistics; Image=Statistics; OnAction=VAR ItemStatistics@1001 : Page 5827; BEGIN ItemStatistics.SetItem(Rec); ItemStatistics.RUNMODAL; END; } { 17 ;3 ;Action ; CaptionML=ENU=Entry Statistics; RunObject=Page 304; RunPageLink=No.=FIELD(No.), Date Filter=FIELD(Date Filter), Global Dimension 1 Filter=FIELD(Global Dimension 1 Filter), Global Dimension 2 Filter=FIELD(Global Dimension 2 Filter), Location Filter=FIELD(Location Filter), Drop Shipment Filter=FIELD(Drop Shipment Filter), Variant Filter=FIELD(Variant Filter); Image=EntryStatistics } { 22 ;3 ;Action ; CaptionML=ENU=T&urnover; RunObject=Page 158; RunPageLink=No.=FIELD(No.), Global Dimension 1 Filter=FIELD(Global Dimension 1 Filter), Global Dimension 2 Filter=FIELD(Global Dimension 2 Filter), Location Filter=FIELD(Location Filter), Drop Shipment Filter=FIELD(Drop Shipment Filter), Variant Filter=FIELD(Variant Filter); Image=Turnover } { 15 ;2 ;Action ; CaptionML=ENU=Co&mments; RunObject=Page 124; RunPageLink=Table Name=CONST(Item), No.=FIELD(No.); Image=ViewComments } { 33 ;1 ;ActionGroup; CaptionML=ENU=S&ales; Image=Sales } { 36 ;2 ;Action ; Name=Sales_Prices; CaptionML=ENU=Prices; RunObject=Page 7002; RunPageView=SORTING(Item No.); RunPageLink=Item No.=FIELD(No.); Image=Price } { 34 ;2 ;Action ; Name=Sales_LineDiscounts; CaptionML=ENU=Line Discounts; RunObject=Page 7004; RunPageView=SORTING(Type,Code); RunPageLink=Type=CONST(Item), Code=FIELD(No.); Image=LineDiscount } { 124 ;2 ;Action ; CaptionML=ENU=Prepa&yment Percentages; RunObject=Page 664; RunPageLink=Item No.=FIELD(No.); Image=PrepaymentPercentages } { 37 ;2 ;Action ; CaptionML=ENU=Orders; RunObject=Page 48; RunPageView=SORTING(Document Type,Type,No.); RunPageLink=Type=CONST(Item), No.=FIELD(No.); Image=Document } { 114 ;2 ;Action ; CaptionML=ENU=Returns Orders; RunObject=Page 6633; RunPageView=SORTING(Document Type,Type,No.); RunPageLink=Type=CONST(Item), No.=FIELD(No.); Image=ReturnOrder } { 38 ;1 ;ActionGroup; CaptionML=ENU=&Purchases; Image=Purchasing } { 118 ;2 ;Action ; CaptionML=ENU=Ven&dors; RunObject=Page 114; RunPageView=SORTING(Item No.); RunPageLink=Item No.=FIELD(No.); Image=Vendor } { 39 ;2 ;Action ; CaptionML=ENU=Prices; RunObject=Page 7012; RunPageView=SORTING(Item No.); RunPageLink=Item No.=FIELD(No.); Image=Price } { 42 ;2 ;Action ; CaptionML=ENU=Line Discounts; RunObject=Page 7014; RunPageView=SORTING(Item No.); RunPageLink=Item No.=FIELD(No.); Image=LineDiscount } { 125 ;2 ;Action ; CaptionML=ENU=Prepa&yment Percentages; RunObject=Page 665; RunPageLink=Item No.=FIELD(No.); Image=PrepaymentPercentages } { 40 ;2 ;Action ; CaptionML=ENU=Orders; ApplicationArea=#Suite; RunObject=Page 56; RunPageView=SORTING(Document Type,Type,No.); RunPageLink=Type=CONST(Item), No.=FIELD(No.); Image=Document } { 115 ;2 ;Action ; CaptionML=ENU=Return Orders; RunObject=Page 6643; RunPageView=SORTING(Document Type,Type,No.); RunPageLink=Type=CONST(Item), No.=FIELD(No.); Image=ReturnOrder } { 76 ;2 ;Action ; CaptionML=ENU=Nonstoc&k Items; ApplicationArea=#Basic,#Suite; RunObject=Page 5726; Image=NonStockItem } { 58 ;1 ;ActionGroup; CaptionML=ENU=Warehouse; Image=Warehouse } { 116 ;2 ;Action ; CaptionML=ENU=&Bin Contents; RunObject=Page 7379; RunPageView=SORTING(Item No.); RunPageLink=Item No.=FIELD(No.); Image=BinContent } { 81 ;2 ;Action ; CaptionML=ENU=Stockkeepin&g Units; RunObject=Page 5701; RunPageView=SORTING(Item No.); RunPageLink=Item No.=FIELD(No.); Image=SKU } { 60 ;1 ;ActionGroup; CaptionML=ENU=Service; Image=ServiceItem } { 103 ;2 ;Action ; CaptionML=ENU=Ser&vice Items; RunObject=Page 5988; RunPageView=SORTING(Item No.); RunPageLink=Item No.=FIELD(No.); Image=ServiceItem } { 11 ;2 ;Action ; AccessByPermission=TableData 5900=R; CaptionML=ENU=Troubleshooting; Image=Troubleshoot; OnAction=VAR TroubleshootingHeader@1000 : Record 5943; BEGIN TroubleshootingHeader.ShowForItem(Rec); END; } { 105 ;2 ;Action ; CaptionML=ENU=Troubleshooting Setup; RunObject=Page 5993; RunPageLink=Type=CONST(Item), No.=FIELD(No.); Image=Troubleshoot } { 62 ;1 ;ActionGroup; CaptionML=ENU=Resources; Image=Resource } { 107 ;2 ;ActionGroup; CaptionML=ENU=R&esource; Image=Resource } { 108 ;3 ;Action ; CaptionML=ENU=Resource &Skills; ToolTipML=ENU=View the assignment of skills to resources, items, service item groups, and service items. You can use skill codes to allocate skilled resources to service items or items that need special skills for servicing.; ApplicationArea=#Jobs; RunObject=Page 6019; RunPageLink=Type=CONST(Item), No.=FIELD(No.); Image=ResourceSkills } { 109 ;3 ;Action ; AccessByPermission=TableData 5900=R; CaptionML=ENU=Skilled R&esources; ToolTipML=ENU=View a list of all registered resources with information about whether they have the skills required to service the particular service item group, item, or service item.; ApplicationArea=#Jobs; Image=ResourceSkills; OnAction=VAR ResourceSkill@1001 : Record 5956; BEGIN CLEAR(SkilledResourceList); SkilledResourceList.Initialize(ResourceSkill.Type::Item,"No.",Description); SkilledResourceList.RUNMODAL; END; } } } CONTROLS { { 1900000001;0;Container; ContainerType=ContentArea } { 1 ;1 ;Group ; CaptionML=ENU=Item; GroupType=Repeater } { 2 ;2 ;Field ; ToolTipML=ENU=Specifies the number of the item.; ApplicationArea=#All; SourceExpr="No." } { 4 ;2 ;Field ; ToolTipML=ENU=Specifies a description of the item.; ApplicationArea=#All; SourceExpr=Description } { 106 ;2 ;Field ; ToolTipML=ENU=Specifies if the item card represents a physical item (Inventory) or a service (Service).; ApplicationArea=#Basic,#Suite; SourceExpr=Type } { 113 ;2 ;Field ; ToolTipML=ENU=Specifies how many units, such as pieces, boxes, or cans, of the item are in inventory.; ApplicationArea=#Basic,#Suite; SourceExpr=Inventory; HideValue=IsService } { 95 ;2 ;Field ; SourceExpr="Created From Nonstock Item"; Visible=FALSE } { 97 ;2 ;Field ; ToolTipML=ENU=Specifies that a substitute exists for this item.; ApplicationArea=#Suite; SourceExpr="Substitutes Exist" } { 112 ;2 ;Field ; SourceExpr="Stockkeeping Unit Exists"; Visible=FALSE } { 8 ;2 ;Field ; SourceExpr="Assembly BOM" } { 99 ;2 ;Field ; SourceExpr="Production BOM No." } { 101 ;2 ;Field ; SourceExpr="Routing No." } { 6 ;2 ;Field ; ToolTipML=ENU=Specifies the unit in which the item is held in inventory.; ApplicationArea=#Basic,#Suite; SourceExpr="Base Unit of Measure" } { 43 ;2 ;Field ; SourceExpr="Shelf No."; Visible=FALSE } { 45 ;2 ;Field ; SourceExpr="Costing Method"; Visible=FALSE } { 122 ;2 ;Field ; SourceExpr="Cost is Adjusted" } { 51 ;2 ;Field ; SourceExpr="Standard Cost"; Visible=FALSE } { 53 ;2 ;Field ; ToolTipML=ENU=Specifies the cost per unit of the item.; ApplicationArea=#Basic,#Suite; SourceExpr="Unit Cost" } { 55 ;2 ;Field ; SourceExpr="Last Direct Cost"; Visible=FALSE } { 57 ;2 ;Field ; SourceExpr="Price/Profit Calculation"; Visible=FALSE } { 59 ;2 ;Field ; SourceExpr="Profit %"; Visible=FALSE } { 61 ;2 ;Field ; ToolTipML=ENU=Specifies the price for one unit of the item, in LCY.; ApplicationArea=#Basic,#Suite; SourceExpr="Unit Price" } { 63 ;2 ;Field ; SourceExpr="Inventory Posting Group"; Visible=FALSE } { 12 ;2 ;Field ; SourceExpr="Gen. Prod. Posting Group"; Visible=FALSE } { 74 ;2 ;Field ; SourceExpr="VAT Prod. Posting Group"; Visible=FALSE } { 35 ;2 ;Field ; SourceExpr="Item Disc. Group"; Visible=FALSE } { 65 ;2 ;Field ; SourceExpr="Vendor No." } { 67 ;2 ;Field ; SourceExpr="Vendor Item No."; Visible=FALSE } { 69 ;2 ;Field ; ToolTipML=ENU=Specifies a code for the item's tariff number.; ApplicationArea=#Basic,#Suite; SourceExpr="Tariff No."; Visible=FALSE } { 71 ;2 ;Field ; SourceExpr="Search Description" } { 91 ;2 ;Field ; SourceExpr="Overhead Rate"; Visible=FALSE } { 89 ;2 ;Field ; SourceExpr="Indirect Cost %"; Visible=FALSE } { 1102601000;2;Field ; SourceExpr="Item Category Code"; Visible=FALSE } { 1102601002;2;Field ; SourceExpr="Product Group Code"; Visible=FALSE } { 1102601004;2;Field ; SourceExpr=Blocked; Visible=FALSE } { 1102601006;2;Field ; SourceExpr="Last Date Modified"; Visible=FALSE } { 1102601010;2;Field ; SourceExpr="Sales Unit of Measure"; Visible=FALSE } { 1102601012;2;Field ; SourceExpr="Replenishment System"; Visible=FALSE } { 1102601016;2;Field ; SourceExpr="Purch. Unit of Measure"; Visible=FALSE } { 1102601018;2;Field ; SourceExpr="Lead Time Calculation"; Visible=FALSE } { 1102601020;2;Field ; SourceExpr="Manufacturing Policy"; Visible=FALSE } { 1102601024;2;Field ; SourceExpr="Flushing Method"; Visible=FALSE } { 9 ;2 ;Field ; SourceExpr="Assembly Policy"; Visible=FALSE } { 1102601026;2;Field ; SourceExpr="Item Tracking Code"; Visible=FALSE } { 31 ;2 ;Field ; CaptionML=ENU=Default Deferral Template; ToolTipML=ENU=Specifies the default template that governs how to defer revenues and expenses to the periods when they occurred.; ApplicationArea=#Suite; SourceExpr="Default Deferral Template Code"; Importance=Additional } { 140 ;2 ;Field ; ApplicationArea=#Basic,#Suite; SourceExpr=ItemPicture } { 1900000007;0;Container; ContainerType=FactBoxArea } { 3 ;1 ;Part ; ApplicationArea=#All; SubPageLink=Source Type=CONST(Item), Source No.=FIELD(No.); PagePartID=Page875; Visible=SocialListeningVisible; PartType=Page } { 26 ;1 ;Part ; ApplicationArea=#All; SubPageLink=Source Type=CONST(Item), Source No.=FIELD(No.); PagePartID=Page876; Visible=SocialListeningSetupVisible; PartType=Page; UpdatePropagation=Both } { 1901314507;1;Part ; SubPageLink=No.=FIELD(No.), Date Filter=FIELD(Date Filter), Global Dimension 1 Filter=FIELD(Global Dimension 1 Filter), Global Dimension 2 Filter=FIELD(Global Dimension 2 Filter), Location Filter=FIELD(Location Filter), Drop Shipment Filter=FIELD(Drop Shipment Filter), Bin Filter=FIELD(Bin Filter), Variant Filter=FIELD(Variant Filter), Lot No. Filter=FIELD(Lot No. Filter), Serial No. Filter=FIELD(Serial No. Filter); PagePartID=Page9089; PartType=Page } { 1903326807;1;Part ; SubPageLink=No.=FIELD(No.), Date Filter=FIELD(Date Filter), Global Dimension 1 Filter=FIELD(Global Dimension 1 Filter), Global Dimension 2 Filter=FIELD(Global Dimension 2 Filter), Location Filter=FIELD(Location Filter), Drop Shipment Filter=FIELD(Drop Shipment Filter), Bin Filter=FIELD(Bin Filter), Variant Filter=FIELD(Variant Filter), Lot No. Filter=FIELD(Lot No. Filter), Serial No. Filter=FIELD(Serial No. Filter); PagePartID=Page9090; Visible=FALSE; PartType=Page } { 1906840407;1;Part ; SubPageLink=No.=FIELD(No.), Date Filter=FIELD(Date Filter), Global Dimension 1 Filter=FIELD(Global Dimension 1 Filter), Global Dimension 2 Filter=FIELD(Global Dimension 2 Filter), Location Filter=FIELD(Location Filter), Drop Shipment Filter=FIELD(Drop Shipment Filter), Bin Filter=FIELD(Bin Filter), Variant Filter=FIELD(Variant Filter), Lot No. Filter=FIELD(Lot No. Filter), Serial No. Filter=FIELD(Serial No. Filter); PagePartID=Page9091; PartType=Page } { 1901796907;1;Part ; SubPageLink=No.=FIELD(No.), Date Filter=FIELD(Date Filter), Global Dimension 1 Filter=FIELD(Global Dimension 1 Filter), Global Dimension 2 Filter=FIELD(Global Dimension 2 Filter), Location Filter=FIELD(Location Filter), Drop Shipment Filter=FIELD(Drop Shipment Filter), Bin Filter=FIELD(Bin Filter), Variant Filter=FIELD(Variant Filter), Lot No. Filter=FIELD(Lot No. Filter), Serial No. Filter=FIELD(Serial No. Filter); PagePartID=Page9109; Visible=FALSE; PartType=Page } { 136 ;1 ;Part ; Name=ItemAttributesFactBox; ApplicationArea=#Basic,#Suite; PagePartID=Page9110; PartType=Page } { 1900383207;1;Part ; PartType=System; SystemPartID=RecordLinks } { 1905767507;1;Part ; PartType=System; SystemPartID=Notes } } CODE { VAR TempFilterItemAttributesBuffer@1014 : TEMPORARY Record 7506; CalculateStdCost@1005 : Codeunit 5812; ItemAvailFormsMgt@1000 : Codeunit 353; ApprovalsMgmt@1008 : Codeunit 1535; SkilledResourceList@1001 : Page 6023; SocialListeningSetupVisible@1003 : Boolean INDATASET; SocialListeningVisible@1002 : Boolean INDATASET; CRMIntegrationEnabled@1006 : Boolean; CRMIsCoupledToRecord@1004 : Boolean; OpenApprovalEntriesExist@1007 : Boolean; IsService@1009 : Boolean INDATASET; InventoryItemEditable@1010 : Boolean INDATASET; EnabledApprovalWorkflowsExist@1011 : Boolean; CanCancelApprovalForRecord@1013 : Boolean; EventFilter@1012 : Text; PROCEDURE GetSelectionFilter@3() : Text; VAR Item@1001 : Record 27; SelectionFilterManagement@1002 : Codeunit 46; BEGIN CurrPage.SETSELECTIONFILTER(Item); EXIT(SelectionFilterManagement.GetSelectionFilterForItem(Item)); END; PROCEDURE SetSelection@1(VAR Item@1000 : Record 27); BEGIN CurrPage.SETSELECTIONFILTER(Item); END; LOCAL PROCEDURE SetSocialListeningFactboxVisibility@2(); VAR SocialListeningMgt@1000 : Codeunit 871; BEGIN SocialListeningMgt.GetItemFactboxVisibility(Rec,SocialListeningSetupVisible,SocialListeningVisible); END; LOCAL PROCEDURE EnableControls@4(); BEGIN IsService := (Type = Type::Service); InventoryItemEditable := Type = Type::Inventory; END; LOCAL PROCEDURE SetWorkflowManagementEnabledState@9(); VAR WorkflowManagement@1001 : Codeunit 1501; WorkflowEventHandling@1000 : Codeunit 1520; BEGIN EventFilter := WorkflowEventHandling.RunWorkflowOnSendItemForApprovalCode + '|' + WorkflowEventHandling.RunWorkflowOnItemChangedCode; EnabledApprovalWorkflowsExist := WorkflowManagement.EnabledWorkflowExist(DATABASE::Item,EventFilter); END; BEGIN END. } }