Symptomer
Når du installerer den nyeste versjonen av regninger Kundeoversikt-rapporten, hvis du bruker en faktura på relaterte betalingstransaksjonen og bokføre den i den italienske versjonen av Microsoft Dynamics NAV 2009, viser ikke rapporten betalingen. Det bare viser fakturaen så nær. Følg trinnene i delen kodeendringer for å løse dette problemet. Dette problemet oppstår i følgende produkter:
-
Den italienske versjonen av Microsoft Dynamics NAV 2009 R2
-
Den italienske versjonen av Microsoft Dynamics NAV 2009 SP1
Oppløsning
Informasjon om hurtigreparasjon
En støttet hurtigreparasjon er nå tilgjengelig fra Microsoft. Det er imidlertid bare ment å løse problemet som er beskrevet i denne artikkelen. Bruk den bare på systemer som har dette bestemte problemet. Denne hurtigreparasjonen kan gjennomgå ytterligere testing. Hvis du ikke er alvorlig påvirket av dette problemet, anbefaler vi derfor at du venter på neste oppdateringspakke for Microsoft Dynamics NAV 2009 eller den neste versjonen av Microsoft Dynamics NAV som inneholder denne hurtigreparasjonen.
Obs! I spesielle tilfeller avgifter som vanligvis påløper for støtte samtaler kan avbrytes hvis en kundestøttemedarbeider for Microsoft Dynamics og beslektede produkter avgjør at en bestemt oppdatering løser problemet. Vanlige kundestøttekostnader gjelder for ytterligere kundestøttespørsmål og problemer som ikke dekkes av den gjeldende oppdateringen.
Installasjonsinformasjon
Microsoft bruker ment som eksempler, uten garanti, verken direkte eller indirekte. Dette inkluderer, men er ikke begrenset til, eventuelle stilltiende garantier om salgbarhet eller anvendelighet for særskilte formål. Denne artikkelen forutsetter at du er kjent med programmeringsspråket som anvendes, og verktøyene som brukes til å opprette og feilsøke prosedyrer. Microsofts kundestøtteteknikere kan hjelpe deg med å forklare funksjonaliteten til en bestemt prosedyre. De endrer imidlertid ikke disse eksemplene for å lage forbedret funksjonalitet eller lage prosedyrer som dekker dine spesifikke behov.
Obs! Før du installerer denne hurtigreparasjonen, må du kontrollere at alle brukerne i Microsoft Dynamics NAV-klienten er logget av systemet. Dette inkluderer tjenester for Microsoft Dynamics NAV Application Server (NAS). Du skal bare klient-brukeren som er logget på når du implementerer denne hurtigreparasjonen.
Hvis du vil implementere denne hurtigreparasjonen, må du ha en utviklerlisens.
Vi anbefaler at kontoen i vinduet Windows-pålogging eller i vinduet Database-pålogging være tildelt "SUPER" rolle-ID. Hvis brukerkontoen ikke kan tilordnes "SUPER" rolle-IDen, må du kontrollere at brukerkontoen har følgende tillatelser:
-
Endre-tillatelse for objektet du vil endre.
-
Tilgangsnivået for systemet objekt-IDen til 5210 objektet og systemet objekt-ID-9015
-objektet.
Obs! Du har ikke tilgangsrettigheter til datalagre med mindre du har til å utføre data reparasjon.
Kodeendringer
Obs! Alltid løser teste koden i et kontrollert miljø før du installerer hurtigreparasjoner til produksjonsdatamaskiner for.
Hvis du vil løse dette problemet, gjør du følgende:
-
Endre koden i rapporten regninger Kundeliste (12117) som følger:
Eksisterende kode 1...DataItemTableView=SORTING(Cust. Ledger Entry No.,Entry Type,Posting Date)
WHERE(Entry Type=CONST(Application));
OnPreDataItem=BEGIN
// Delete the following line.
CustLedgEntry1.COPYFILTER("Posting Date", "Detailed Cust. Ledg. Entry"."Posting Date"); // IT0004
// End of the deleted line.
END;
OnAfterGetRecord=BEGIN
...Ny kode 1
...DataItemTableView=SORTING(Cust. Ledger Entry No.,Entry Type,Posting Date)
WHERE(Entry Type=CONST(Application));
OnPreDataItem=BEGIN
// Add the following line.
FindAppliedDtldCustLedgEntry(CustLedgEntry1."Entry No.");
// End of the added line.
END;
OnAfterGetRecord=BEGIN
...Eksisterende kode 2
... { END;
OnAfterGetRecord=BEGIN
// Delete the following lines.
IF ("Entry No." = 0) OR ("Unapplied by Entry No." <> 0) OR
("Document Type" IN
["Document Type"::Payment,"Document Type"::Refund,"Document Type"::Dishonored,"Document Type"::" "])
THEN
ShowDetailedCustLedgerEntry := TRUE
ELSE
ShowDetailedCustLedgerEntry := FALSE;
// IT0015.begin
//VSTF275923 begin
// VSTF305887.begin
//IF PrintCustLedgEntry2 THEN
IF PrintCustLedgEntry2 AND ("Document Type" <> "Document Type"::Payment) THEN
CurrReport.SKIP;
// VSTF305887.end
//CurrReport.SKIP;
//VSTF275923 end
// IT0015.end
CustLedgEntry3.GET("Applied Cust. Ledger Entry No.");
CustLedgEntry3.CALCFIELDS("Original Amt. (LCY)");
// IT0004.begin
ClosedByAmountLCY := "Amount (LCY)";
TotalForCustomer += "Amount (LCY)";
// IT0004.end
TotalClosedByAmntLCY += "Amount (LCY)"; // IT0005
// End of the deleted lines.
END;
DataItemLink=Cust. Ledger Entry No.=FIELD(Entry No.);
...Ny kode 2
...END;
OnAfterGetRecord=BEGIN
// Add the following lines.
IF NOT TempDetailedCustLedgEntryApp.GET("Entry No.") THEN
CurrReport.SKIP;
CustLedgEntry3.GET("Cust. Ledger Entry No.");
CustLedgEntry3.CALCFIELDS("Original Amt. (LCY)");
AppliedDocumentTypeText := FORMAT(CustLedgEntry3."Document Type");
ClosedByAmountLCY := "Amount (LCY)";
TotalForCustomer -= "Amount (LCY)";
TotalClosedByAmntLCY -= "Amount (LCY)";
// End of the added lines.
END;
DataItemLink=Cust. Ledger Entry No.=FIELD(Entry No.);
...Eksisterende kode 3
... SectionWidth=24450;
SectionHeight=846;
OnPreSection=BEGIN
// Delete the following line.
CurrReport.SHOWOUTPUT(ShowDetailedCustLedgerEntry)
// End of the deleted line.
END;
}
...Ny kode 3
...SectionWidth=24450;
SectionHeight=846;
OnPreSection=BEGIN
// Add the following lines.
IF ("Unapplied by Entry No." <> 0) THEN
CurrReport.SHOWOUTPUT(FALSE);
// End of the added lines.
END;
}
...Eksisterende kode 4
...ForeColor=65535;
SourceExpr="Document Type" = "Document Type"::Dishonored;
DataSetFieldName=Document_Type_____Document_Type___Dishonored }
// Delete the following lines.
{ 1130123;TextBox ;24000;0 ;150 ;423 ;Visible=No;
SourceExpr=ShowDetailedCustLedgerEntry;
DataSetFieldName=ShowDetailedCustLedgerEntry }
// End of the deleted lines.
}
}
{ PROPERTIES
...Ny kode 4
... ForeColor=65535;
SourceExpr="Document Type" = "Document Type"::Dishonored;
DataSetFieldName=Document_Type_____Document_Type___Dishonored }
}
}
{ PROPERTIES
... -
Endre koden i den globale variabler i rapporten regninger Kundeliste (12117) som følger:
Eksisterende kode 1...Text000@1130000 : TextConst 'ENU=Please specify the Ending Date';
Text001@1130001 : TextConst 'ENU=The Bank Receipts Risk Period Value must not be blank in Sales Setup';
SalesSetup@1130002 : Record 311;
EndingDate@1130003 : Date;
ExposureDate@1130004 : Date;
OnlyOpened@1130005 : Boolean;
...Ny kode 1
... Text000@1130000 : TextConst 'ENU=Please specify the Ending Date';
Text001@1130001 : TextConst 'ENU=The Bank Receipts Risk Period Value must not be blank in Sales Setup';
SalesSetup@1130002 : Record 311;
// Add the following lines.
CustLedgEntry3@1130130 : Record 21;
TempDetailedCustLedgEntryApp@1130131 : TEMPORARY Record 379;
// End of the added lines.
EndingDate@1130003 : Date;
ExposureDate@1130004 : Date;
OnlyOpened@1130005 : Boolean;
...Eksisterende kode 2
... TotExpAmntForCust@1130011 : Decimal;
BalanceDue@1130012 : Decimal;
NULL@1130013 : DateFormula;
// Delete the following lines.
CustLedgEntry3@1130130 : Record 21;
PrintCustLedgEntry2@1130014 : Boolean;
ShowDetailedCustLedgerEntry@1130015 : Boolean INDATASET;
// End of the deleted lines.
BEGIN
{
...Ny kode 2
... TotExpAmntForCust@1130011 : Decimal;
BalanceDue@1130012 : Decimal;
NULL@1130013 : DateFormula;
// Add the following lines.
PrintCustLedgEntry2@1130014 : Boolean;
AppliedDocumentTypeText@1130132 : Text[30];
LOCAL PROCEDURE FindAppliedDtldCustLedgEntry@1130007(CustLedgerEntryNo@1130000 : Integer);
VAR
DetailedCustLedgEntry@1130001 : Record 379;
DetailedCustLedgEntryApplied@1130003 : Record 379;
BEGIN
TempDetailedCustLedgEntryApp.RESET;
TempDetailedCustLedgEntryApp.DELETEALL;
DetailedCustLedgEntry.SETRANGE("Cust. Ledger Entry No.",CustLedgerEntryNo);
DetailedCustLedgEntry.SETRANGE("Entry Type",DetailedCustLedgEntry."Entry Type"::Application);
DetailedCustLedgEntry.SETRANGE(Unapplied,FALSE);
DetailedCustLedgEntryApplied.SETRANGE(
"Entry Type",DetailedCustLedgEntryApplied."Entry Type"::Application);
IF DetailedCustLedgEntry.FINDSET THEN
REPEAT
DetailedCustLedgEntryApplied.SETRANGE(
"Applied Cust. Ledger Entry No.",DetailedCustLedgEntry."Applied Cust. Ledger Entry No.");
DetailedCustLedgEntryApplied.SETFILTER(
"Cust. Ledger Entry No.",'<>%1',CustLedgerEntryNo);
DetailedCustLedgEntryApplied.SETRANGE(
"Customer No.",DetailedCustLedgEntry."Customer No.");
DetailedCustLedgEntryApplied.SETRANGE(
"Transaction No.",DetailedCustLedgEntry."Transaction No.");
IF DetailedCustLedgEntryApplied.FINDSET THEN
REPEAT
TempDetailedCustLedgEntryApp := DetailedCustLedgEntryApplied;
IF TempDetailedCustLedgEntryApp.INSERT THEN;
UNTIL DetailedCustLedgEntryApplied.NEXT = 0;
UNTIL DetailedCustLedgEntry.NEXT = 0;
END;
// End of the added lines.
BEGIN
{
... -
Endre koden i rapporten leverandørkontolisten regninger (12116) som følger:
Eksisterende kode 1... </TableRow>
</TableRows>
</Header>
<Visibility>
<Hidden>=IIF(Fields!ShowDetailedCustLedgerEntry.Value,TRUE,FALSE)</Hidden>
</Visibility>
</TableGroup>
</TableGroups>
<Top>2.22222cm</Top>
...Ny kode 1
... </TableRow>
</TableRows>
</Header>
// Delete the following lines.
<Visibility>
<Hidden>=IIF(Fields!ShowDetailedCustLedgerEntry.Value,TRUE,FALSE)</Hidden>
</Visibility>
// End of the deleted lines.
</TableGroup>
</TableGroups>
<Top>2.22222cm</Top>
...Eksisterende kode 2
...Field Name="Detailed_Cust__Ledg__Entry_Cust__Ledger_Entry_No_">
<DataField>Detailed_Cust__Ledg__Entry_Cust__Ledger_Entry_No_</DataField>
</Field>
<Field Name="ShowDetailedCustLedgerEntry">
<DataField>ShowDetailedCustomerLedgerEntry</DataField>
</Field>
</Fields>
<Query>
<CommandText />
...Ny kode 2
...<Field Name="Detailed_Cust__Ledg__Entry_Cust__Ledger_Entry_No_">
<DataField>Detailed_Cust__Ledg__Entry_Cust__Ledger_Entry_No_</DataField>
</Field>
// Delete the following lines.
<Field Name="ShowDetailedCustLedgerEntry">
<DataField>ShowDetailedCustomerLedgerEntry</DataField>
</Field>
// End of the deleted lines.
</Fields>
<Query>
<CommandText />
...
Forutsetninger
Du må ha én av de følgende programmene installert for å bruke denne hurtigreparasjonen:
-
Den italienske versjonen av Microsoft Dynamics NAV 2009 R2
-
Den italienske versjonen av Microsoft Dynamics NAV 2009 SP1
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".
Obs! Dette er en "RASKT PUBLISERE" artikkel opprettet direkte fra innenfor organisasjonen Microsoft Kundestøtte. Informasjonen i dette dokumentet tilbys som-er som svar på nye problemer. Som et resultat av hastigheten i å gjøre den tilgjengelig materialene kan inkludere typografiske feil, og den kunne bli revidert når som helst uten varsel. Se Vilkårene for Brukfor andre hensyn.