MVA-beløpet er uventet null i salgskreditnotastatistikken når du får bokførte mottakslinjer for å reversere gjennom salgskreditnotaen i Microsoft Dynamics NAV 2009 SP1

Gjelder for
Dynamics NAV 2009 Service Pack 1

Artikler som er raskt publisert, gir informasjon direkte fra Microsofts stø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

Vurder følgende scenario i Microsoft Dynamics NAV 2009 med Service Pack 1 (SP1). Du kjører funksjonen Hent returkvitteringslinjer i en kreditnota for å få bokførte mottakslinjer. Deretter legger du inn kreditnotaen for å reversere mottakslinjene. Deretter viser du skjemaet Salgskreditnotastatistikk fra den bokførte kreditnotaen. I dette scenarioet er mva-beløpet null uventet.

Dette problemet oppstår når du bruker elementsporing eller ikke.

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å neste Microsoft Dynamics NAV-oppdateringspakke eller neste versjon 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.

Hvis du vil installere denne hurtigreparasjonen, endrer du koden i salgslinjetabellen (37) og i tabellen Kjøpslinje (39).

Gjør dette ved å følge disse trinnene:

  1. Endre koden i CalcVATAmountLines-utløseren i Salgslinje-tabellen (37) på følgende måte:
    Eksisterende kode

    ....
    
    ("Document Type" IN ["Document Type"::"Return Order","Document Type"::"Credit Memo"]) AND
    (NOT SalesHeader.Receive) AND SalesHeader.Invoice:
    BEGIN
    QtyToHandle := GetAbsMin("Qty. to Invoice","Return Qty. Rcd. Not Invd.");
    VATAmountLine.Quantity :=
    VATAmountLine.Quantity + GetAbsMin("Qty. to Invoice (Base)","Ret. Qty. Rcd. Not Invd.(Base)");
    END;
    ELSE
    BEGIN
    QtyToHandle := "Qty. to Invoice";
    ....
    
    

    Erstatningskode

    ....
    
    ("Document Type" IN ["Document Type"::"Return Order","Document Type"::"Credit Memo"]) AND
    (NOT SalesHeader.Receive) AND SalesHeader.Invoice:
    BEGIN
    IF "Return Receipt No." = '' THEN BEGIN // Add this line.
    QtyToHandle := GetAbsMin("Qty. to Invoice","Return Qty. Rcd. Not Invd.");
    VATAmountLine.Quantity :=
    VATAmountLine.Quantity + GetAbsMin("Qty. to Invoice (Base)","Ret. Qty. Rcd. Not Invd.(Base)");
    // Add the following lines. 
    END ELSE BEGIN
    QtyToHandle := "Qty. to Invoice"; 
    VATAmountLine.Quantity := VATAmountLine.Quantity + "Qty. to Invoice (Base)"; 
    END; 
    // The end of the new lines. 
    END;
    ELSE
    BEGIN
    QtyToHandle := "Qty. to Invoice";
    ....
    
    
  2. Endre koden i CalcVATAmountLines-utløseren i Kjøpslinje-tabellen (39) som følger:
    Eksisterende kode

    ....
    
    ("Document Type" IN ["Document Type"::"Return Order","Document Type"::"Credit Memo"]) AND
    (NOT PurchHeader.Ship) AND PurchHeader.Invoice:
    BEGIN
    QtyToHandle := GetAbsMin("Qty. to Invoice","Return Qty. Shipped Not Invd.");
    VATAmountLine.Quantity :=
    VATAmountLine.Quantity + GetAbsMin("Qty. to Invoice (Base)","Ret. Qty. Shpd Not Invd.(Base)");
    END;
    ELSE
    BEGIN
    QtyToHandle := "Qty. to Invoice";
    ....
    
    
    

    Erstatningskode

    ....
    
    ("Document Type" IN ["Document Type"::"Return Order","Document Type"::"Credit Memo"]) AND
    (NOT PurchHeader.Ship) AND PurchHeader.Invoice:
    BEGIN
    IF "Return Shipment No." = '' THEN BEGIN  // Add this line.
    QtyToHandle := GetAbsMin("Qty. to Invoice","Return Qty. Shipped Not Invd.");
    VATAmountLine.Quantity :=
    VATAmountLine.Quantity + GetAbsMin("Qty. to Invoice (Base)","Ret. Qty. Shpd Not Invd.(Base)");
    // Add the following lines. 
    END ELSE BEGIN 
    QtyToHandle := "Qty. to Invoice";
    VATAmountLine.Quantity := VATAmountLine.Quantity + "Qty. to Invoice (Base)";
    END; 
    // The end of the new lines. 
    END;
    ELSE
    BEGIN
    QtyToHandle := "Qty. to Invoice";
    ....
    
    
    

Forutsetninger

Du må ha Microsoft Dynamics NAV 2009 SP1 installert for å bruke denne hurtigreparasjonen.

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.