Vrednost »Tehtano povprečje je preseženo« je napačna, ko zaženete poročilo »Dobavitelj – zapadlo Plačila« (10748) po uporabi sprotnih popravkov 2710511 v španski različici programa Microsoft Dynamics NAV 2009

Velja za
Microsoft Dynamics NAV 2009 R2 Dynamics NAV 2009 Service Pack 1

Ta članek velja za Microsoft Dynamics NAV za področne nastavitve španskega jezika (es).

Znaki

Predpostavimo, da ste v španski različici programa Microsoft Dynamics NAV 2009 uporabili 2710511 sprotnih popravkov. Ko zaženete poročilo »Dobavitelj – zapadla plačila« (10748), je vrednost »Tehtano povprečje preseženega izraza« napačna. Vrednost »Tehtano povprečje preseženega obdobja « vključuje vrednost za nepravilno odprte račune. Ta težava se pojavi v teh izdelkih:

  • Španska različica programa Microsoft Dynamics NAV 2009 R2
  • Španska različica servisnega paketa SP1 za Microsoft Dynamics NAV 2009

Če želite več informacij o 2710511 sprotnih popravkov, kliknite to številko članka iz Microsoftove zbirke znanja:

2710511 Zneski plačil in odprti zneski plačil so mešani in nepravilno prikazani v razdelku »Plačila zunaj zakonske omejitve« v poročilu o Plačila dobavitelja (10748) v španski različici programa Microsoft Dynamics NAV

Rešitev

Informacije o sprotnem popravku

Podprt sprotni popravek je zdaj na voljo pri Microsoftu. Vendar pa je namenjen le odpravljanju težave, ki je opisana v tem članku. Uporabite ga samo za sisteme, ki imajo to težavo. Ta sprotni popravek bo morda dodatno preučen. Če vas ta težava ne prizadene, priporočamo, da počakate na naslednji servisni paket za Microsoft Dynamics NAV 2009 ali naslednjo različico storitve Microsoft Dynamics NAV, ki vsebuje ta sprotni popravek.

Opomba V posebnih primerih se lahko stroški, ki običajno nastanejo za klice podpore, prekličejo, če strokovnjak za tehnično podporo za Microsoft Dynamics in sorodne izdelke ugotovi, da bo določena posodobitev odpravila vašo težavo. Običajni stroški podpore bodo veljali za dodatna vprašanja o podpori in težave, ki ne izpolnjujejo pogojev za določeno zadevno posodobitev.

            
          

Informacije o namestitvi

Microsoft ponuja primere programiranja samo za ponazoritev, brez izrecnega ali implicitnega jamstva. To vključuje, vendar ni omejeno na, implicitna jamstva primernosti za prodajo ali primernost za določen namen. V tem članku je predvideno, da ste seznanjeni s programskim jezikom, ki je prikazan, in z orodji, ki se uporabljajo za ustvarjanje in odpravljanje napak v postopkih. Microsoftovi inženirji za podporo vam lahko pomagajo razložiti funkcionalnost določenega postopka, vendar teh primerov ne bodo spremenili, da bi zagotovili dodano funkcionalnost ali ustvarili postopke, ki ustrezajo vašim posebnim zahtevam.

Opomba Preden namestite ta sprotni popravek, preverite, ali so vsi uporabniki odjemalca Microsoft Navision odjavljeni iz sistema. To vključuje uporabnike odjemalcev Microsoft Navision Application Services (NAS). Pri uvedbi tega sprotnega popravka bi morali biti edini uporabnik odjemalca, ki je prijavljen.

Če želite izvesti ta sprotni popravek, morate imeti licenco za razvijalce.

Priporočamo, da se uporabniškemu računu v oknu »Prijave v sistem Windows« ali v oknu »Prijave v zbirko podatkov« dodeli ID vloge »SUPER«. Če uporabniškemu računu ni mogoče dodeliti ID-ja vloge »SUPER«, morate preveriti, ali ima uporabniški račun ta dovoljenja:

  • Dovoljenje »Spremeni« za predmet, ki ga boste spremenili.
  • Dovoljenje za izvajanje za predmet ID sistemskega objekta 5210 in za predmet ID sistemskega objekta 9015.

                
Opomba Ni vam treba imeti pravic do shramb podatkov, razen če morate opraviti popravilo podatkov.

Spremembe kode

Opomba Popravke kode vedno preskusite v nadzorovanem okolju, preden jih uporabite v proizvodnih računalnikih.
Če želite odpraviti to težavo, sledite tem korakom:

  1. Spremenite kodo v podatkovni postavki številka 1 v poročilu Stranka - zapadla plačila (10747) na naslednji način:
    Obstoječa koda 1

    ...
    ESP=Plazo medio ponderado superado:];
    
    // Delete the following line.
    SourceExpr=CustWeightedExceededAmount / ABS(CustTotalAmount);
    
    DataSetFieldName=CustTotalAmounts_WeightedExceededAmount }
    ...
    

    Nadomestna koda 1

    ...
    ESP=Plazo medio ponderado superado:];
    
    // Add the following line.
    SourceExpr=CalcWeightedExceededAmt;
    
    DataSetFieldName=CustTotalAmounts_WeightedExceededAmount }
    ...
    

    Obstoječa koda 2

    ...
    ESP=Plazo medio ponderado superado:];
    
    // Delete the following line.
    SourceExpr=TotalWeightedExceededAmount / ABS(TotalAmount);
    
    DataSetFieldName=TotalAmounts_WeightedExceededAmount }
    ...
    

    Nadomestna koda 2

    ...
    ESP=Plazo medio ponderado superado:];
    
    // Add the following line.
    SourceExpr=CalcTotalWeightedExceededAmt;
    
    DataSetFieldName=TotalAmounts_WeightedExceededAmount }
    ...
    
  2. Spremenite kodo v podatkovni postavki številka 3 v poročilu Stranka - zapadla plačila (10747) na naslednji način:
    Obstoječa koda

    ...
    IF AppldCustLedgEntryTmp."Entry Type" = AppldCustLedgEntryTmp."Entry Type"::"Initial Entry" THEN
    
    // Delete the following lines.
    AppldCustLedgEntryTmp."Posting Date" := 0D;
    CustDaysOverdue += DaysOverdue;
    CustWeightedExceededAmount += DaysOverdue * ABS(AppldCustLedgEntryTmp."Amount (LCY)");
    CustTotalAmount := CustPaymentOutsideDueDate + CustPaymentWithinDueDate;
    TotalDaysOverdue += DaysOverdue;
    TotalWeightedExceededAmount += DaysOverdue * ABS(AppldCustLedgEntryTmp."Amount (LCY)");
    // End of the lines.
    
    TotalAmount := TotalPaymentOutsideDueDate + TotalPaymentWithinDueDate;
    ...
    

    Nadomestna koda

    ...
    IF AppldCustLedgEntryTmp."Entry Type" = AppldCustLedgEntryTmp."Entry Type"::"Initial Entry" THEN
    
    // Add the following lines.
    AppldCustLedgEntryTmp."Posting Date" := 0D
    ELSE BEGIN
    CustApplAmount += ABS(AppldCustLedgEntryTmp."Amount (LCY)");
    TotalApplAmount += ABS(AppldCustLedgEntryTmp."Amount (LCY)");
    CustWeightedExceededAmount += DaysOverdue * ABS(AppldCustLedgEntryTmp."Amount (LCY)");
    TotalWeightedExceededAmount += DaysOverdue * ABS(AppldCustLedgEntryTmp."Amount (LCY)");
    END;
    CustDaysOverdue += DaysOverdue;
    CustTotalAmount := CustPaymentOutsideDueDate + CustPaymentWithinDueDate;
    TotalDaysOverdue += DaysOverdue;
    // End of the lines.
    
    TotalAmount := TotalPaymentOutsideDueDate + TotalPaymentWithinDueDate;
    ...
    
  3. Spremenite kodo v poročilu Globalne spremenljivke v poročilu Stranka – zapadla Plačila (10747) na naslednji način:
    Obstoječa koda

    ...
    Text1100003@1100006 : TextConst 'ENU=The start date cannot be later than the end date.;ESP=La fecha de inicio no puede ser posterior a la fecha final.';
    CustTotalAmount@1100013 : Decimal;
    ...
    

    Nadomestna koda

    ...
    Text1100003@1100006 : TextConst 'ENU=The start date cannot be later than the end date.;ESP=La fecha de inicio no puede ser posterior a la fecha final.';
    
    // Add the following lines.
    CustApplAmount@1100020 : Decimal;
    TotalApplAmount@1100012 : Decimal;
    // End of the lines.
    
    CustTotalAmount@1100013 : Decimal;
    ...
    
  4. Spremenite kodo v funkciji ClearCustAmount v poročilu Stranka – zapadla Plačila (10747) na naslednji način:
    Obstoječa koda

    ...
    CustPaymentWithinDueDate := 0;
    END;
    ...
    

    Nadomestna koda

    ...
    CustPaymentWithinDueDate := 0;
    
    // Add the following lines.
    CustApplAmount := 0;
    END;
    LOCAL PROCEDURE CalcWeightedExceededAmt@1100000() : Decimal;
    BEGIN
    IF CustApplAmount = 0 THEN
    EXIT(0);
    EXIT(CustWeightedExceededAmount / ABS(CustApplAmount));
    END;
    LOCAL PROCEDURE CalcTotalWeightedExceededAmt@1100009() : Decimal;
    BEGIN
    IF TotalApplAmount = 0 THEN
    EXIT(0);
    EXIT(TotalWeightedExceededAmount / ABS(TotalApplAmount));
    // End of the lines.
    
    END;
    ...
    
  5. Spremenite kodo v podatkovni postavki številka 1 v poročilu Dobavitelj - zapadla Plačila (10748), kot sledi:
    Obstoječa koda 1

    ...
    ESP=Plazo medio ponderado superado:];
    
    // Delete the following line.
    SourceExpr=VendWeightedExceededAmount / ABS(VendTotalAmount);
    
    DataSetFieldName=Vend_WeightedExceededAmount }
    ...
    

    Nadomestna koda 1

    ...
    ESP=Plazo medio ponderado superado:];
    
    // Add the following line.
    SourceExpr=CalcWeightedExceededAmt;
    
    DataSetFieldName=Vend_WeightedExceededAmount }
    ...
    

    Obstoječa koda 2

    ...
    ESP=Plazo medio ponderado superado:];
    
    // Delete the following line.
    SourceExpr=TotalWeightedExceededAmount / ABS(TotalAmount);
    
    DataSetFieldName=Total_WeightedExceededAmount }
    ...
    

    Nadomestna koda 2

    ...
    ESP=Plazo medio ponderado superado:];
    
    // Add the following line.
    SourceExpr=CalcTotalWeightedExceededAmt;
    
    DataSetFieldName=Total_WeightedExceededAmount }
    ...
    
  6. Spremenite kodo v podatkovni postavki številka 3 v poročilu Dobavitelj - zapadla plačila (10748), kot sledi:
    Obstoječa koda

    ...
    IF AppldVendLedgEntryTmp."Entry Type" = AppldVendLedgEntryTmp."Entry Type"::"Initial Entry" THEN
    
    // Delete the following lines.
    AppldVendLedgEntryTmp."Posting Date" := 0D;
    VendDaysOverdue += DaysOverdue;
    VendWeightedExceededAmount += DaysOverdue * ABS(AppldVendLedgEntryTmp."Amount (LCY)");
    VendTotalAmount := VendPaymentOutsideDueDate + VendPaymentWithinDueDate;
    TotalDaysOverdue += DaysOverdue;
    TotalWeightedExceededAmount += DaysOverdue * ABS(AppldVendLedgEntryTmp."Amount (LCY)");
    // End of the lines.
    
    TotalAmount := TotalPaymentOutsideDueDate + TotalPaymentWithinDueDate;
    ...
    

    Nadomestna koda

    ...
    IF AppldVendLedgEntryTmp."Entry Type" = AppldVendLedgEntryTmp."Entry Type"::"Initial Entry" THEN
    
    // Add the following lines.
    AppldVendLedgEntryTmp."Posting Date" := 0D
    ELSE BEGIN
    VendApplAmount += ABS(AppldVendLedgEntryTmp."Amount (LCY)");
    TotalApplAmount += ABS(AppldVendLedgEntryTmp."Amount (LCY)");
    VendWeightedExceededAmount += DaysOverdue * ABS(AppldVendLedgEntryTmp."Amount (LCY)");
    TotalWeightedExceededAmount += DaysOverdue * ABS(AppldVendLedgEntryTmp."Amount (LCY)");
    END;
    VendDaysOverdue += DaysOverdue;
    VendTotalAmount := VendPaymentOutsideDueDate + VendPaymentWithinDueDate;
    TotalDaysOverdue += DaysOverdue;
    // End of the lines.
    
    TotalAmount := TotalPaymentOutsideDueDate + TotalPaymentWithinDueDate;
    ...
    
  7. Spremenite kodo v poročilu Globalne spremenljivke v poročilu Dobavitelj – zapadla plačila (10748) na naslednji način:
    Obstoječa koda

    ...
    Text1100003@1100006 : TextConst 'ENU=The start date cannot be later than the end date.;ESP=La fecha de inicio no puede ser posterior a la fecha final.';
    VendTotalAmount@1100011 : Decimal;
    ...
    

    Nadomestna koda

    ...
    Text1100003@1100006 : TextConst 'ENU=The start date cannot be later than the end date.;ESP=La fecha de inicio no puede ser posterior a la fecha final.';
    
    // Add the following lines.
    VendApplAmount@1100002 : Decimal;
    TotalApplAmount@1100020 : Decimal;
    // End of the lines.
    
    VendTotalAmount@1100011 : Decimal;
    ...
    
  8. Spremenite kodo v funkciji ClearVendAmount v poročilu Dobavitelj – zapadla Plačila (10748) na naslednji način:
    Obstoječa koda

    ...
    VendPaymentWithinDueDate := 0;
    END;
    ...
    

    Nadomestna koda

    ...
    VendPaymentWithinDueDate := 0;
    
    // Add the following lines.
    VendApplAmount := 0;
    END;
    LOCAL PROCEDURE CalcWeightedExceededAmt@1100000() : Decimal;
    BEGIN
    IF VendApplAmount = 0 THEN
    EXIT(0);
    EXIT(VendWeightedExceededAmount / ABS(VendApplAmount));
    END;
    LOCAL PROCEDURE CalcTotalWeightedExceededAmt@1100009() : Decimal;
    BEGIN
    IF TotalApplAmount = 0 THEN
    EXIT(0);
    EXIT(TotalWeightedExceededAmount / ABS(TotalApplAmount));
    // End of the lines.
    
    END;
    ...
    

Pogoji

Če želite uporabiti ta sprotni popravek, morate imeti nameščenega enega od teh izdelkov:

  • Španska različica programa Microsoft Dynamics NAV 2009 R2
  • Španska različica servisnega paketa SP1 za Microsoft Dynamics NAV 2009

Podatki o odstranitvi

Tega sprotnega popravka ne morete odstraniti.

Stanje

Microsoft je potrdil, da gre za težavo v Microsoftovih izdelkih, ki so navedeni v razdelku »Velja za«.

Opomba To je članek »FAST PUBLISH«, ustvarjen neposredno v Microsoftovi organizaciji za podporo. Informacije, ki jih vsebuje ta dokument, so na voljo kot odgovor na nastajajoča vprašanja. Zaradi hitrosti dajanja na voljo lahko gradivo vsebuje tipografske napake in jih je mogoče kadar koli brez predhodnega obvestila revidirati. Za druge pomisleke glejte Pogoje uporabe .