Microsoft Dynamics NAV registrerer ingen endringer i en endringslogg når du bruker Dimensions-Multiple-funksjonaliteten i en gruppe med kontodiagrammer

Gjelder for
Dynamics NAV 2009 Service Pack 1 Dynamics NAV 2009 Microsoft Dynamics NAV 5.0 Service Pack 1

ARTIKLER OM RASK PUBLISERING GIR INFORMASJON DIREKTE FRA MICROSOFTS KUNDESTØTTEORGANISASJON. INFORMASJONEN SOM FINNES HER, OPPRETTES SOM SVAR PÅ NYE ELLER UNIKE EMNER, ELLER ER MENT Å SUPPLERE ANNEN KUNNSKAPSBASEINFORMASJON.

Denne artikkelen gjelder for Microsoft Dynamics NAV for alle land og alle språkinnstillinger.

Symptomer

Anta at du aktiverer funksjonen For aktivering av endringslogg for å registrere innsettingsoperasjonen, endringsoperasjonen og avbrytingsoperasjonen for alle felt i standarddimensjonstabellen (352) i Microsoft Dynamics NAV 2009. Når du angir standarddimensjoner og dimensjonsverdier for en gruppe med kontodiagrammer ved hjelp av Dimensjoner-Flere-funksjonalitet, registrerer ikke Microsoft Dynamics NAV endringene i en endringslogg.

Dette problemet oppstår i følgende produkter:

  • Microsoft Dynamics NAV 2009 Service Pack 1
  • Microsoft Dynamics NAV 2009
  • Microsoft Dynamics NAV 5.0 Service Pack 1

Oppløsning

Hurtigreparasjonsinformasjon

En støttet hurtigreparasjon er nå tilgjengelig fra Microsoft. Det er imidlertid bare ment å rette opp problemet som er beskrevet i denne artikkelen. Bruk den bare på systemer som opplever dette spesifikke problemet. Denne hurtigreparasjonen kan få ytterligere testing. Hvis du ikke er alvorlig påvirket av dette problemet, anbefaler vi derfor at du venter på den neste Microsoft Dynamics NAV 2009-oppdateringspakken eller den neste Microsoft Dynamics NAV-versjonen som inneholder denne hurtigreparasjonen.

Obs! I spesielle tilfeller kan kostnader som vanligvis påløper for støtteanrop, bli avbrutt hvis en technical support professional for Microsoft Dynamics og relaterte produkter bestemmer at en bestemt oppdatering vil løse problemet. De vanlige støttekostnadene gjelder for ytterligere støttespørsmål og problemer som ikke kvalifiserer for den aktuelle oppdateringen.

            
          

Installasjonsinformasjon

Microsoft tilbyr programmeringseksempler bare for illustrasjon, uten garanti enten uttrykt eller underforstått. Dette omfatter, men er ikke begrenset til, de underforståtte garantiene om salgbarhet eller egnethet for et bestemt formål. Denne artikkelen antar at du er kjent med programmeringsspråket som demonstreres, og med verktøyene som brukes til å opprette og feilsøke prosedyrer. Microsoft kundestøtteteknikere kan bidra til å forklare funksjonaliteten til en bestemt prosedyre, men de vil ikke endre disse eksemplene for å gi ekstra funksjonalitet eller konstruere prosedyrer for å oppfylle dine spesifikke krav.

Obs! Før du installerer denne hurtigreparasjonen, må du kontrollere at alle Microsoft Navision-klientbrukere er logget av systemet. Dette inkluderer microsoft Navision Application Services (NAS)-klientbrukere. Du bør være den eneste klientbrukeren som er logget på når du implementerer denne hurtigreparasjonen.

Hvis du vil implementere denne hurtigreparasjonen, må du ha en utviklerlisens.

Vi anbefaler at brukerkontoen i Windows-påloggingsvinduet eller i vinduet Pålogginger for database tilordnes rolle-ID-en SUPER. Hvis brukerkontoen ikke kan tilordnes rolle-IDen SUPER, må du kontrollere at brukerkontoen har følgende tillatelser:

  • Endre-tillatelsen for objektet du skal endre.
  • Execute-tillatelsen for Objektet System Object ID 5210 og systemobjekt-ID 9015-objektet.

                
Vær oppmerksom på at du ikke trenger å ha rettigheter til datalagrene med mindre du må utføre datareparasjon.

Kodeendringer

Obs! Test alltid kodeløsninger i et kontrollert miljø før du bruker løsningene på produksjonsdatamaskinene.
Følg disse trinnene for å bruke denne hurtigreparasjonen:

  1. Legg til følgende lokale variabel i SetCommonDefaultDim-utløseren i standarddimensjoner-multiplum (542), og angi deretter variabelen som følger:

    • Navn: ChangeLogMgt
    • Datatype: Kodeenhet
    • Undertype: Behandling av endringslogg
  2. Legg til følgende lokale variabel i SetCommonDefaultDim-utløseren i standarddimensjoner-multiplum (542), og angi deretter variabelen som følger:

    • Navn: RecRef
    • Datatype: RecordRef
  3. Legg til følgende lokale variabel i SetCommonDefaultDim-utløseren i standarddimensjoner-multiplum (542), og angi deretter variabelen som følger:

    • Navn: xRecRef
    • Datatype: RecordRef
  4. Endre koden i SetCommonDefaultDim-utløseren i skjemaet «Standarddimensjoner–multiplum» (542) på følgende måte:
    Eksisterende kode

    ...
    SETRANGE(
    "Multi Selection Action","Multi Selection Action"::Delete);
    IF FIND('-') THEN
    REPEAT
    IF TempDefaultDim3.FIND('-') THEN
    REPEAT
    IF DefaultDim.GET(
    TempDefaultDim3."Table ID",TempDefaultDim3."No.","Dimension Code")
    
    // Delete the following line.
    THEN
    
    DefaultDim.DELETE(TRUE);
    UNTIL TempDefaultDim3.NEXT = 0;
    UNTIL NEXT = 0;
    SETRANGE(
    "Multi Selection Action","Multi Selection Action"::Change);
    IF FIND('-') THEN
    REPEAT
    IF TempDefaultDim3.FIND('-') THEN
    REPEAT
    IF DefaultDim.GET(
    TempDefaultDim3."Table ID",TempDefaultDim3."No.","Dimension Code")
    THEN BEGIN
    DefaultDim."Dimension Code" := "Dimension Code";
    DefaultDim."Dimension Value Code" := "Dimension Value Code";
    DefaultDim."Value Posting" := "Value Posting";
    DefaultDim.MODIFY(TRUE);
    END ELSE BEGIN
    DefaultDim.INIT;
    DefaultDim."Table ID" := TempDefaultDim3."Table ID";
    DefaultDim."No." := TempDefaultDim3."No.";
    DefaultDim."Dimension Code" := "Dimension Code";
    DefaultDim."Dimension Value Code" := "Dimension Value Code";
    DefaultDim."Value Posting" := "Value Posting";
    DefaultDim.INSERT(TRUE);
    END;
    UNTIL TempDefaultDim3.NEXT = 0;
    UNTIL NEXT = 0;
    ...
    
    

    Erstatningskode

    ...
    SETRANGE(
    "Multi Selection Action","Multi Selection Action"::Delete);
    IF FIND('-') THEN
    REPEAT
    IF TempDefaultDim3.FIND('-') THEN
    REPEAT
    IF DefaultDim.GET(
    TempDefaultDim3."Table ID",TempDefaultDim3."No.","Dimension Code")
    
    // Add the following lines.
    THEN BEGIN
    xRecRef.GETTABLE(DefaultDim);
    
    DefaultDim.DELETE(TRUE);
    
    // Add the following lines.
    ChangeLogMgt.LogDeletion(xRecRef);
    END;
    
    UNTIL TempDefaultDim3.NEXT = 0;
    UNTIL NEXT = 0;
    SETRANGE(
    "Multi Selection Action","Multi Selection Action"::Change);
    IF FIND('-') THEN
    REPEAT
    IF TempDefaultDim3.FIND('-') THEN
    REPEAT
    IF DefaultDim.GET(
    TempDefaultDim3."Table ID",TempDefaultDim3."No.","Dimension Code")
    THEN BEGIN
    
    // Add the following line.
    xRecRef.GETTABLE(DefaultDim);
    
    DefaultDim."Dimension Code" := "Dimension Code";
    DefaultDim."Dimension Value Code" := "Dimension Value Code";
    DefaultDim."Value Posting" := "Value Posting";
    DefaultDim.MODIFY(TRUE);
    
    // Add the following lines.
    RecRef.GETTABLE(DefaultDim); 
    ChangeLogMgt.LogModification(RecRef,xRecRef); 
    
    END ELSE BEGIN
    DefaultDim.INIT;
    DefaultDim."Table ID" := TempDefaultDim3."Table ID";
    DefaultDim."No." := TempDefaultDim3."No.";
    DefaultDim."Dimension Code" := "Dimension Code";
    DefaultDim."Dimension Value Code" := "Dimension Value Code";
    DefaultDim."Value Posting" := "Value Posting";
    DefaultDim.INSERT(TRUE);
    
    // Add the following lines.
    RecRef.GETTABLE(DefaultDim); 
    ChangeLogMgt.LogInsertion(RecRef);
    
    END;
    UNTIL TempDefaultDim3.NEXT = 0;
    UNTIL NEXT = 0;
    ...
    
    

Forutsetninger

Du må ha ett av følgende produkter installert for å bruke denne hurtigreparasjonen:

  • Microsoft Dynamics NAV 2009 Service Pack 1
  • Microsoft Dynamics NAV 2009
  • Microsoft Dynamics NAV 5.0 Service Pack 1

Informasjon om omstart

Du trenger ikke å starte datamaskinen på nytt etter at du har brukt denne kodefiksen.

Informasjon om fjerning

Du kan ikke fjerne denne hurtigreparasjonen.

Status

Microsoft har bekreftet at dette er et problem i Microsoft-produktene som er oppført i delen «Gjelder for».

MICROSOFT OG/ELLER DETS LEVERANDØRER GIR INGEN REPRESENTASJONER ELLER GARANTIER OM EGNETHETEN, PÅLITELIGHETEN ELLER NØYAKTIGHETEN TIL INFORMASJONEN SOM FINNES I DOKUMENTENE, OG DEN RELATERTE GRAFIKKEN SOM PUBLISERES PÅ DETTE NETTSTEDET ("MATERIALENE") TIL NOE FORMÅL.

MATERIALENE KAN INNEHOLDE TEKNISKE UNØYAKTIGHETER ELLER TYPOGRAFISKE FEIL OG KAN BLI REVIDERT NÅR SOM HELST UTEN VARSEL. I DEN GRAD DET ER TILLATT I HENHOLD TIL GJELDENDE LOV, FRASKRIVER MICROSOFT OG/ELLER DETS LEVERANDØRER SEG OG UTELUKKER ALLE REPRESENTASJONER, GARANTIER OG BETINGELSER, ENTEN DET ER UTTRYKKELIG, UNDERFORSTÅTT ELLER LOVFESTET, INKLUDERT, MEN IKKE BEGRENSET TIL REPRESENTASJONER, GARANTIER ELLER BETINGELSER FOR TITTEL, KRENKELSE AV IKKE-KRENKELSE, TILFREDSSTILLENDE BETINGELSE ELLER KVALITET, SALGBARHET OG EGNETHET TIL ET BESTEMT FORMÅL, MED HENSYN TIL MATERIALENE.