Options

Mapping Navision Client Machine IP addresses to Change Logs

webweb Member Posts: 102
Hi all,
Can any one help me on how i can Map Navision Client Machines IP addresses to the Change Log entry in Navision.

We want to be Monitoring Clients that are connected to Navision and the changes they have done on Weekly bases.

Thanks.

Comments

  • Options
    ara3nara3n Member Posts: 9,255
    In Tips and trick there is a solution on how to find the IP.

    IN CU 1 Onopen company you can add code to for change Log Management CU to write a record for IP Address.
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    webweb Member Posts: 102
    ara3n,
    Can you please send me a sample code that can do this.
    I am completely new to navision and am not a programmer. I am trying to familiarized myself in Navision
    Thanks.
  • Options
    ara3nara3n Member Posts: 9,255
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    SavatageSavatage Member Posts: 7,142
    and another
    http://www.mibuso.com/forum/viewtopic.php?t=22586

    I like the point that if everyone had a different login you can track it that way too.
  • Options
    webweb Member Posts: 102
    Where can i put the code?
  • Options
    SavatageSavatage Member Posts: 7,142
    Do you have the ability to add code to codeunits? IF you're not sure what you are doing I would suggest contacting your support center. The last thing you want to do is play with code and make things worse.
  • Options
    webweb Member Posts: 102
    I have added the code in CU 1 ApplicationManagement on the CompanyOpen() trigger. It this possition Correct?

    Now where can you go to monitor the client IP addresses? It it on the change log? Where?
    Thanks.
  • Options
    ara3nara3n Member Posts: 9,255
    Do you have the changelog in your license?
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    webweb Member Posts: 102
    Yes, I do

    ****************************************************************************
    Granule ID Name Amount Expires



    610 Representative 1
    620 Product Specialist 1
    630 Solution Developer 1
    710 Partner Tools 1
    900 All Application Granules 1
    1,010 Foundation Layer 1
    1,100 Company 1
    1,140 Company - unlimited 1
    1,200 Session 20
    1,300 Database Expansion per 100 MB 100
    1,400 User IDs & Passwords 1
    1,410 Permissions 1
    1,420 Application Server - 100 instances 10
    1,500 Server - Any 1
    1,700 C/ODBC 1
    1,750 C/OCX 1
    1,800 C/FRONT 1
    1,960 Test Integration 1
    2,000 Client Monitor 1
    2,010 Server - Microsoft SQL Server Option 1
    2,020 Per Database license 1
    2,105 Allow new versions 1
    2,110 Navision Version 3.xx 1
    2,200 Connector for Siebel eBusiness - Financials 1
    2,310 Web User /Each 10
    3,000 General Ledger 1
    3,010 General Ledger - Basic General Ledger 1
    3,020 General Ledger - Allocations 1
    3,030 General Ledger - Budgets 1
    3,040 General Ledger - Account Schedules 1
    3,050 General Ledger - Consolidation 1
    3,060 General Ledger - Responsibility Centers 1
    3,070 General Ledger - Basic XBRL 1
    3,080 General Ledger - Change Log 1
    3,250 Sales & Receivables 1
    3,260 Sales & Receivables - Basic Receivables 1
    3,270 Sales & Receivables - Sales Invoicing 1
    3,280 Sales & Receivables - Sales Order Management 1
    3,290 Sales & Receivables - Sales Invoice Discount 1
    3,300 Sales & Receivables - Customer/Item Discount 1
    3,310 Sales & Receivables - Alternative Ship-to's 1
    3,320 Sales & Receivables - Order Promising 1
    3,340 Sales & Receivables - Shipping Agents 1
    3,350 Sales & Receivables - Sales Return Order Mgt 1
    3,360 Sales & Receivables - Calendars 1
    3,370 Sales & Receivables - Sales Line Discount 1
    3,380 Sales & Receivables - Sales Line Pricing 1
    3,500 Purchases & Payables 1
    3,510 Purchases & Payables - Basic Payables 1
    3,520 Purchases & Payables - Purchase Invoicing 1
    3,530 Purchases & Payables - Purchase Order Managem 1
    3,540 Purchases & Payables - Purchase Invoice Disco 1
    3,550 Purchases & Payables - Requisition Management 1
    3,560 Purchases & Payables - Alt. Order Addresses 1
    3,570 Purchases & Payables - Purchase Return Order 1
    3,580 Purchases & Payables - Purchase Line Discount 1
    3,590 Purchases & Payables - Purchase Line Pricing 1
    3,750 Application Wide 1
    3,760 Application Wide - Multiple Currencies 1
    3,770 Purchases & Payables - Drop Shipments 1
    3,780 Application Wide - Salespeople/Purchasers 1
    3,790 Application Wide - Intrastat 1
    3,800 Application Wide - Extended Text 1
    4,000 Inventory 1
    4,010 Inventory - Basic Inventory 1
    4,020 Application Wide - Multiple Document Langua 1
    4,030 Inventory - Multiple Sales Prices 1
    4,040 Inventory - Multiple Locations ->2 1
    4,045 Inventory - Stock Keeping Units 1
    4,050 Inventory - Alternative Vendors 1
    4,060 Inventory - Bills of Materials 1
    4,080 Inventory - Sales Quantity Discoun 1
    4,090 Inventory - Purchase Qty. Discount 1
    4,100 Inventory - Location Transfers 1
    4,110 Inventory - Item Substitutions 1
    4,120 Inventory - Item Cross References 1
    4,130 Inventory - Nonstock Items 1
    4,140 Inventory - Item Tracking 1
    4,150 Inventory - Item Charge 1
    4,160 Inventory - Cycle Counting 1
    4,170 Inventory - Bin 1
    4,180 Inventory - Put-away 1
    4,190 Inventory - Warehouse Receipt 1
    4,200 Inventory - Pick 1
    4,210 Inventory - Warehouse Shipment 1
    4,250 Resources 1
    4,260 Resources - Basic Resources 1
    4,270 Resources - Capacity Management 1
    4,280 Resources - Multiple Sales Prices 1
    4,290 Resources - Multiple Costs 1
    4,500 Jobs 1
    4,510 Jobs - Basic Jobs 1
    4,520 Jobs - Budgets/Estimates 1
    4,530 Jobs - Phases/Tasks/Steps 1
    4,760 Application Wide - Basic Dimensions 1
    4,770 Application Wide - Reason Codes 1
    4,780 Application Wide - Advanced Dimensions 1
    4,900 Application Wide - Multiple System Langua 1
    5,000 Cash Manager 1
    5,010 Cash Manager - Bank Account Managemen 1
    5,020 Cash Manager - Check Writing 1
    5,030 Cash Manager - Bank Reconciliation 1
    5,100 CRM - Marketing & Sales 1
    5,110 Relationship Mgt. - Contact Management 1
    5,120 Relationship Mgt. - Contact Classification 1
    5,130 Relationship Mgt. - Campaign Management 1
    5,140 Relationship Mgt. - Opportunity Management 1
    5,150 Relationship Mgt. - Task Management 1
    5,160 Relationship Mgt. - Interaction/Document M 1
    5,170 Relationship Mgt. - Contact Search 1
    5,180 E-mail logging for MS Exchange 1
    5,190 Outlook Client Intergration 1
    5,200 Smart Tag Integration Toolkit 1
    5,250 Fixed Assets 1
    5,260 Fixed Assets - Basic 1
    5,270 Fixed Assets - Insurance 1
    5,280 Fixed Assets - Maintenance 1
    5,290 Fixed Assets - Allocation 1
    5,300 Fixed Assets - Reclassification 1
    5,500 Contact Management 1
    5,510 Contact Management - Basic 1
    5,520 Contact Management - Activities 1
    5,530 Contact Management - Market Groups 1
    5,540 Contact Management - Trade Codes 1
    5,750 Human Resources 1
    5,760 Human Resources - Basic 1
    5,900 CRM - Service 1
    5,910 Service Management - Service Order Manageme 1
    5,911 Service Management - Service order Manageme 1
    5,920 Service Management - Service Item Managemen 1
    5,921 Service Management - Service Item Managemen 1
    5,930 Service Management - Service Contract Manag 1
    5,940 Service Management - Planning & Dispatching 1
    5,950 Service Management - Job Scheduling 1
    6,210 Commerce Portal 1
    6,220 Commerce Portal version 3.10 & 3.60 1
    6,710 User Portal 1
    6,720 User Portal - Basic & Sales Activity Center 1
    7,110 Report & Dataport Designer 1
    7,120 Form Designer 1
    7,130 Table Designer 1
    7,140 XML Designer 1
    7,200 Application Builder 1
    7,300 Solution Developer 1
    7,400 Custom Area Objects 1
    10,810 Cash Manager - Print Promissory Note 1
    100,000 Translation Tool 1
    101,000 Demonstration Data Tool 1
    102,100 Navision Financials Conversion + Compare Tool 1
    102,110 Navision Financials Conversion Toolkit 1
    102,120 Navision Financials Compare Toolkit & Merge T 1
    104,000 Upgrade Toolkit Execute objects(104,000-104,1 1
    110,000 Demonstration Data CAPRI Execute(110,000-149, 1
    150,000 Performance Troubleshooting Execute 1
    160,001 Country Demo objects Execute 160.000-169.999 1
    170,001 Country Upgrade objects Execute 170.000-189.9 1
    51,599,910 I3 Object/Granule Permissions 1
    51,599,920 I3 System Permissions 1
    99,000,110 Sales Management 1
    99,000,120 Sales Management - Basic 1
    99,000,130 Sales Management - Sales Budgets 1
    99,000,140 Sales Management - Forecasting 1
    99,000,751 Manufacturing (99.000.750 - 99.001.049) NSC 1
    99,003,602 impuls Execute objects (99,003,600-99,003,799 1
    99,003,802 W1 Manufacturing Execute (99,003,800-99,003,8 1
    99,004,602 Financial Analyst Object(99,004,600-99,004,69 1
    99,004,710 Euro Conversion Tool 1
    99,008,502 W1 Commerce Gateway Exe.(99,008,500-99,008,69 1
    99,010,103 Pipeline Management Tool 1
    99,010,104 Pipeline Management Tool Attain 1
    Have a look at my Licience info. above i see if i have it there.
  • Options
    ara3nara3n Member Posts: 9,255
    Here is example code on how to do it.

    Add the user to userSetup table.
    Make sure change Log Setup is enabled and that Log Modification for user setup is enabled.
    Also add a new field IP address to the UserSetup.

    The ip address I hardcoded, but you can use the example in above link to get the ip address
    //T01 start
    IF GUIALLOWED THEN
      IF USERID <> '' THEN
        IF UserSetup.GET(USERID) THEN BEGIN
          UserSetup.IPAddress := '12.12.12.12';
          recRef.GETTABLE(UserSetup);
          UserSetup.IPAddress := '';
          xrecref.GETTABLE(UserSetup);
          ChangeLogMgt.LogModification(recRef,xrecref);
        END;
    //T01 End
    
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    kolaboykolaboy Member Posts: 446
    I did all you said, Now i want to know where is the code you gave me going to be placed and the Datatype of the variables

    Thnaks
  • Options
    webweb Member Posts: 102
    Yes i also want to know where the code is going to be place.
  • Options
    ara3nara3n Member Posts: 9,255
    In CU 1

    in function

    CompanyOpen()
    Name	DataType	Subtype	Length
    UserSetup	Record	User Setup	
    recRef	RecordRef		
    xrecref	RecordRef		
    ChangeLogMgt	Codeunit	Change Log Management
    
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    ara3nara3n Member Posts: 9,255
    edited 2008-02-12
    kolaboy wrote:
    I did all you said, Now i want to know where is the code you gave me going to be placed and the Datatype of the variables

    Thnaks

    I didn't know two people wanted the solution.
    :oops:
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    kolaboykolaboy Member Posts: 446
    Whats the Datatype for IP address? I created IP address as filed with Data type text is this right?
    IF all these are done where can one be seeing the IP addresses
  • Options
    ara3nara3n Member Posts: 9,255
    the ip address is text.

    You will see the changes in change log entry table
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    webweb Member Posts: 102
    I have created the IP address field in the change log entry table but when i run it i don't see the ip addresses of the client.

    What is happening now is when client log in to Navision their IP addresses pop up and when you click ok, you are logged in. I wanted this to appear on the change log entry table but its not.

    How Can i have all the client Machines IP addresses appear on the change log entry table. I put the code in CU 1 OnOpenCompany trigger.
    Any Idea please.
  • Options
    ara3nara3n Member Posts: 9,255
    could you paste your code?

    thanks.
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    webweb Member Posts: 102
    Here is the code i put in CU 1 Application management.
    CompanyOpen()
    IF GUIALLOWED THEN
      LogInStart;
    
    IF ISCLEAR(WindowShell) THEN
      CREATE(WindowShell);
     WindowShell.CurrentDirectory(ENVIRON('windir') + '\system32\');
         txtCommand := 'ipconfig';
         WSHExec := WindowShell.Exec(txtCommand);
         WSHTextStream := WSHExec.StdOut;
    
         i := 0;
         WHILE (NOT WSHTextStream.AtEndOfStream) AND (i < 8) DO BEGIN
          txtMsg := WSHTextStream.ReadLine();
          i +=  1;
         END;
    MESSAGE(COPYSTR(txtMsg,45)); 
    
    IF GUIALLOWED THEN
      IF USERID <> '' THEN
        IF UserSetup.GET(USERID) THEN BEGIN
          UserSetup."IP Address" := '192.168.11.90';
          recRef.GETTABLE(UserSetup);
          UserSetup."IP Address" := '';
          xrecref.GETTABLE(UserSetup);
          ChangeLogMgt.LogModification(recRef,xrecref);
        END;
    

    The IP address pos up on client machines on log in. I wanted the IP addresses to appear in the change log entry so that it can be printed to monitor the users.
    Thanks
  • Options
    ara3nara3n Member Posts: 9,255
    Change your code to this.
    CompanyOpen()
    IF GUIALLOWED THEN
      LogInStart;
    
    IF ISCLEAR(WindowShell) THEN
      CREATE(WindowShell);
     WindowShell.CurrentDirectory(ENVIRON('windir') + '\system32\');
         txtCommand := 'ipconfig';
         WSHExec := WindowShell.Exec(txtCommand);
         WSHTextStream := WSHExec.StdOut;
    
         i := 0;
         WHILE (NOT WSHTextStream.AtEndOfStream) AND (i < 8) DO BEGIN
          txtMsg := WSHTextStream.ReadLine();
          i +=  1;
         END;
    IF GUIALLOWED THEN
      IF USERID <> '' THEN
        IF UserSetup.GET(USERID) THEN BEGIN
          UserSetup."IP Address" := COPYSTR(txtMsg,45);
          recRef.GETTABLE(UserSetup);
          UserSetup."IP Address" := '';
          xrecref.GETTABLE(UserSetup);
          ChangeLogMgt.LogModification(recRef,xrecref);
        END; 
    


    Now Run Form Change Log Setup from object designer. Check Change Log activated. Click on Setup->Tables
    Find User set log moifcation to all fields.
    Then log out and in
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    ara3nara3n Member Posts: 9,255
    After you log in run form Change Log Entries

    and you should see at the bottom the record and the field for IP address
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    webweb Member Posts: 102
    I have done what you asked me to do, but i still did not see the IP addresses.
    The field is still blank when i run the Change Log.

    Anything i am missing?
    Have a log at my Change log form:
    OBJECT Form 595 Change Log Entries
    {
      OBJECT-PROPERTIES
      {
        Date=12/02/08;
        Time=21:32:25;
        Modified=Yes;
        Version List=NAVW13.70;
      }
      PROPERTIES
      {
        Width=19360;
        Height=6710;
        Editable=Yes;
        CaptionML=ENU=Change Log Entries;
        TableBoxID=1;
        SourceTable=Table405;
      }
      CONTROLS
      {
        { 1   ;TableBox     ;220  ;220  ;17930;5500 ;HorzGlue=Both;
                                                     VertGlue=Both }
        { 2   ;TextBox      ;0    ;0    ;1700 ;0    ;Visible=No;
                                                     ParentControl=1;
                                                     InColumn=Yes;
                                                     SourceExpr="Entry No." }
        { 3   ;Label        ;0    ;0    ;0    ;0    ;ParentControl=2;
                                                     InColumnHeading=Yes }
        { 4   ;TextBox      ;0    ;0    ;1700 ;0    ;ParentControl=1;
                                                     InColumn=Yes;
                                                     SourceExpr="Date and Time" }
        { 5   ;Label        ;0    ;0    ;0    ;0    ;ParentControl=4;
                                                     InColumnHeading=Yes }
        { 8   ;TextBox      ;0    ;0    ;1700 ;0    ;HorzGlue=Both;
                                                     ParentControl=1;
                                                     InColumn=Yes;
                                                     SourceExpr="User ID" }
        { 9   ;Label        ;0    ;0    ;0    ;0    ;ParentControl=8;
                                                     InColumnHeading=Yes }
        { 10  ;TextBox      ;0    ;0    ;1700 ;0    ;ParentControl=1;
                                                     InColumn=Yes;
                                                     Lookup=No;
                                                     SourceExpr="Table No." }
        { 11  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=10;
                                                     InColumnHeading=Yes }
        { 12  ;TextBox      ;0    ;0    ;4400 ;0    ;ParentControl=1;
                                                     InColumn=Yes;
                                                     DrillDown=No;
                                                     SourceExpr="Table Name" }
        { 13  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=12;
                                                     InColumnHeading=Yes }
        { 24  ;TextBox      ;0    ;0    ;4400 ;0    ;ParentControl=1;
                                                     InColumn=Yes;
                                                     SourceExpr="Primary Key" }
        { 25  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=24;
                                                     InColumnHeading=Yes }
        { 1000000000;TextBox;15002;330  ;1700 ;440  ;ParentControl=1;
                                                     InColumn=Yes;
                                                     SourceExpr="IP Address" }
        { 1000000001;Label  ;0    ;0    ;0    ;0    ;ParentControl=1000000000;
                                                     InColumnHeading=Yes }
        { 14  ;TextBox      ;0    ;0    ;1700 ;0    ;ParentControl=1;
                                                     InColumn=Yes;
                                                     Lookup=No;
                                                     SourceExpr="Field No." }
        { 15  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=14;
                                                     InColumnHeading=Yes }
        { 16  ;TextBox      ;0    ;0    ;4400 ;0    ;ParentControl=1;
                                                     InColumn=Yes;
                                                     DrillDown=No;
                                                     SourceExpr="Field Name" }
        { 17  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=16;
                                                     InColumnHeading=Yes }
        { 18  ;TextBox      ;0    ;0    ;550  ;0    ;ParentControl=1;
                                                     InColumn=Yes;
                                                     SourceExpr="Type of Change" }
        { 19  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=18;
                                                     InColumnHeading=Yes }
        { 20  ;TextBox      ;0    ;0    ;4400 ;0    ;ParentControl=1;
                                                     InColumn=Yes;
                                                     SourceExpr="Old Value" }
        { 21  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=20;
                                                     InColumnHeading=Yes }
        { 22  ;TextBox      ;0    ;0    ;4400 ;0    ;ParentControl=1;
                                                     InColumn=Yes;
                                                     SourceExpr="New Value" }
        { 23  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=22;
                                                     InColumnHeading=Yes }
        { 26  ;TextBox      ;0    ;0    ;1700 ;0    ;Visible=No;
                                                     ParentControl=1;
                                                     InColumn=Yes;
                                                     Lookup=No;
                                                     SourceExpr="Primary Key Field 1 No." }
        { 27  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=26;
                                                     InColumnHeading=Yes }
        { 28  ;TextBox      ;0    ;0    ;4400 ;0    ;Visible=No;
                                                     ParentControl=1;
                                                     InColumn=Yes;
                                                     DrillDown=No;
                                                     SourceExpr="Primary Key Field 1 Name" }
        { 29  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=28;
                                                     InColumnHeading=Yes }
        { 30  ;TextBox      ;0    ;0    ;4400 ;0    ;Visible=No;
                                                     ParentControl=1;
                                                     InColumn=Yes;
                                                     SourceExpr="Primary Key Field 1 Value" }
        { 31  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=30;
                                                     InColumnHeading=Yes }
        { 32  ;TextBox      ;0    ;0    ;1700 ;0    ;Visible=No;
                                                     ParentControl=1;
                                                     InColumn=Yes;
                                                     Lookup=No;
                                                     SourceExpr="Primary Key Field 2 No." }
        { 33  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=32;
                                                     InColumnHeading=Yes }
        { 34  ;TextBox      ;0    ;0    ;4400 ;0    ;Visible=No;
                                                     ParentControl=1;
                                                     InColumn=Yes;
                                                     DrillDown=No;
                                                     SourceExpr="Primary Key Field 2 Name" }
        { 35  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=34;
                                                     InColumnHeading=Yes }
        { 36  ;TextBox      ;0    ;0    ;4400 ;0    ;Visible=No;
                                                     ParentControl=1;
                                                     InColumn=Yes;
                                                     SourceExpr="Primary Key Field 2 Value" }
        { 37  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=36;
                                                     InColumnHeading=Yes }
        { 38  ;TextBox      ;0    ;0    ;1700 ;0    ;Visible=No;
                                                     ParentControl=1;
                                                     InColumn=Yes;
                                                     Lookup=No;
                                                     SourceExpr="Primary Key Field 3 No." }
        { 39  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=38;
                                                     InColumnHeading=Yes }
        { 40  ;TextBox      ;0    ;0    ;4400 ;0    ;Visible=No;
                                                     ParentControl=1;
                                                     InColumn=Yes;
                                                     DrillDown=No;
                                                     SourceExpr="Primary Key Field 3 Name" }
        { 41  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=40;
                                                     InColumnHeading=Yes }
        { 42  ;TextBox      ;0    ;0    ;4400 ;0    ;Visible=No;
                                                     ParentControl=1;
                                                     InColumn=Yes;
                                                     SourceExpr="Primary Key Field 3 Value" }
        { 43  ;Label        ;0    ;0    ;0    ;0    ;ParentControl=42;
                                                     InColumnHeading=Yes }
        { 44  ;CommandButton;6820 ;5940 ;2200 ;550  ;HorzGlue=Right;
                                                     VertGlue=Bottom;
                                                     Default=Yes;
                                                     PushAction=LookupOK;
                                                     InvalidActionAppearance=Hide }
        { 45  ;CommandButton;9240 ;5940 ;2200 ;550  ;HorzGlue=Right;
                                                     VertGlue=Bottom;
                                                     Cancel=Yes;
                                                     PushAction=LookupCancel;
                                                     InvalidActionAppearance=Hide }
        { 46  ;CommandButton;14080;5940 ;2200 ;550  ;HorzGlue=Right;
                                                     VertGlue=Bottom;
                                                     PushAction=FormHelp }
        { 47  ;CommandButton;11660;5940 ;2200 ;550  ;HorzGlue=Right;
                                                     VertGlue=Bottom;
                                                     CaptionML=ENU=&Print;
                                                     OnPush=VAR
                                                              ChangeLogEntriesRep@1000 : Report 509;
                                                            BEGIN
                                                              ChangeLogEntriesRep.SETTABLEVIEW(Rec);
                                                              ChangeLogEntriesRep.RUN;
                                                            END;
                                                             }
      }
      CODE
      {
    
        BEGIN
        END.
      }
    }
    
    
    Any ideas please?
  • Options
    ara3nara3n Member Posts: 9,255
    make sure that you have all log insertion log modification and log deletion set to all fields for User Setup table.
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    webweb Member Posts: 102
    I have set the insertion, modification etc. to all fields in the user setup table and logged out. Now the command prompt just flash and upon login and when i run the change log, i did not see any IP Address indicated.

    Any other idea pleas.
  • Options
    ara3nara3n Member Posts: 9,255
    Make sure
    to Run Form Change Log Setup from object designer. Check Change Log activated.


    Also turn on debugger and and see what it does once it goes into change log management CU.

    Also make sure you don't have any filters in change log entry.
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    ara3nara3n Member Posts: 9,255
    Ok change the code in the following so that you don't have to insert the user in the user setup.
    F GUIALLOWED THEN
         UserSetup."User ID" := USERID
         UserSetup."IP Address" := COPYSTR(txtMsg,45);
         recRef.GETTABLE(UserSetup);
         UserSetup."IP Address" := '';
         xrecref.GETTABLE(UserSetup);
         ChangeLogMgt.LogModification(recRef,xrecref);
    end;
    
    Ahmed Rashed Amini
    Independent Consultant/Developer


    blog: https://dynamicsuser.net/nav/b/ara3n
  • Options
    webweb Member Posts: 102
    Thanks ara3n, i am now seeing the IP Addresses on the change log entry under the new value column. Its also picking up the User ID as well.
    =D>
  • Options
    ara3nara3n Member Posts: 9,255
    you're welcome.
    Ahmed Rashed Amini
    Independent Consultant/Developer


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