Ez a cikk a Microsoft Dynamics NAV-ra vonatkozik minden országban és minden nyelvi beállításban.
Tünetek
Ha a Microsoft Dynamics NAV 2009 R2 nem angol nyelvű verziójában vagy a Microsoft Dynamics NAV 2009 Service Pack 1 (SP1) nem angol nyelvű verziójában futtatja az "Elemzés az Excel programba" funkciót, egyes nem angol ékezetes karakterek helytelenül jelennek meg a Kimutatás mezőlistalapon. Ha például a Microsoft Dynamics NAV francia nyelvű verzióját használja, az ékezetes karakterek helytelenül jelennek meg, az alábbiak szerint:
- Az "Année" helyett "Ann'e" jelenik meg.
- A "Période comptable" helyett a "P'riode comptable" jelenik meg.
- A "Co-t total" helyett a "Co-t total" jelenik meg.
Ugyanennek a mögöttes problémának egy másik tünete, ha a felhasználó a következő hibaüzenetet kapja, miközben az Excelbe próbál exportálni a "Dimenziók szerinti elemzés" űrlapról:
Sikertelen volt a tag kimutatásmezők hívása. A Microsoft Excel a következő üzenetet adta vissza: PivotFields method of PivotTable class failed
Megoldás
Gyorsjavítással kapcsolatos információk
A Microsoft már elérhető egy támogatott gyorsjavítást kínál. Ez azonban csak a cikkben ismertetett probléma megoldására szolgál. Csak olyan rendszerekre alkalmazza, amelyek tapasztalják ezt a problémát. Előfordulhat, hogy a gyorsjavítás további tesztelésen eshet át. Ezért ha nem érinti súlyosan ez a probléma, azt javasoljuk, hogy várja meg a Microsoft Dynamics NAV 2009 következő szervizcsomagját, illetve a Microsoft Dynamics NAV következő olyan verzióját, amely tartalmazza ezt a gyorsjavítást.
Megjegyzés: Különleges esetekben a támogatási hívások szokásos díjai törölhetők, ha a Microsoft Dynamics és a kapcsolódó termékek terméktámogatási szakértője úgy ítéli meg, hogy egy adott frissítés megoldja a problémát. A szokásos támogatási költségek olyan további támogatási kérdések és problémák esetén merülnek fel, amelyek nem felelnek meg a kérdéses frissítés feltételeinek.
Telepítési információk
A Microsoft csak illusztrációs céllal kínál programozási példákat, kifejezett vagy vélelmezett garancia nélkül. Ez magában foglalja, de nem kizárólagosan a forgalmazhatóságra vagy az adott célra való alkalmasságra vonatkozó vélelmezett garanciát. Ez a cikk feltételezi, hogy ismeri a bemutatott programozási nyelvet, valamint az eljárások létrehozásához és hibakereséséhez használt eszközöket. A Microsoft támogatási szakemberei segíthetnek elmagyarázni egy adott eljárás funkcionalitását, de nem módosítják a példákat, hogy további funkciókat biztosítsanak, és nem építenek ki eljárásokat az egyéni igényekre.
Megjegyzés: A gyorsjavítás telepítése előtt győződjön meg arról, hogy a Microsoft Navision-ügyfél összes felhasználója kijelentkezett a rendszerről. Ide tartoznak a Microsoft Navision Application Services (NAS) kliens felhasználói is. A gyorsjavítás telepítésekor csak Ön lehet az, aki be van jelentkezve.
A gyorsjavítás implementálásához fejlesztői licenccel kell rendelkeznie.
Javasoljuk, hogy a Windows Bejelentkezések ablakában vagy az Adatbázis-bejelentkezések ablakban látható felhasználói fiókhoz rendelje a "SUPER" szerepkörazonosítót. Ha a felhasználói fiókhoz nem rendelhető a "SUPER" szerepkörazonosító, ellenőriznie kell, hogy a felhasználói fiók rendelkezik-e az alábbi engedélyekkel:
- A módosítani kívánt objektum Módosítás engedélye.
- Végrehajtási engedély az 5210-es rendszerazonosítójú objektumhoz és a 9015-ös rendszerobjektum-azonosítójú objektumhoz.
Megjegyzés: Az adattárakhoz csak akkor kell jogokkal rendelkeznie, ha adatokat kell javítást végeznie.
Kódváltozások
Megjegyzés: Mindig ellenőrzött környezetben tesztelje a kódjavításokat, mielőtt telepítené őket az üzemi számítógépekre.
A probléma megoldásához hajtsa végre az alábbi lépéseket:
Módosítsa az ExportData függvény kódját az Elemelemzési nézet kódegységében (7152) a következők szerint:
Meglévő kód... IF (ShowActualBudg <> 0) AND (ShowActualBudg <> 1) THEN ERROR(Text000); InitCharTables; WITH ItemAnalysisViewEntry DO BEGIN NoOfRows := CreateFile( ItemAnalysisViewEntry,ShowName,ItemFilter,Dim1Filter,Dim2Filter, Dim3Filter,DateFilter,LocationFilter,BudgetFilter,Sign); FileName := "3TierMngt".DownloadTempFile(FileName); CREATE(xlApp,TRUE,TRUE); xlApp.Workbooks._OpenText(FileName); ...Helyettesítő kód
... IF (ShowActualBudg <> 0) AND (ShowActualBudg <> 1) THEN ERROR(Text000); // Add the following line. CREATE(xlApp,TRUE,TRUE); InitCharTables; WITH ItemAnalysisViewEntry DO BEGIN NoOfRows := CreateFile( ItemAnalysisViewEntry,ShowName,ItemFilter,Dim1Filter,Dim2Filter, Dim3Filter,DateFilter,LocationFilter,BudgetFilter,Sign); FileName := "3TierMngt".DownloadTempFile(FileName); // Delete the following single line. CREATE(xlApp,TRUE,TRUE); xlApp.Workbooks._OpenText(FileName); ...Vegyen fel egy új helyi változót az InitCharTables függvénybe az Elem elemzése nézet kódegységében (7152), majd adja meg a változót az alábbiak szerint:
- Név: ThreeTierMngt@1004
- DataType: Codeunit
- Altípus: 3 rétegű automatizálás Mgt. (419)
Törölje a következő változót az InitCharTables függvényből az Elem elemzése nézet kódegysége (7152):
BSTRConverterBody@1005 : Automation "{A3........."Módosítsa az InitCharTables függvény kódját az Elemelemzési nézet kódegységében (7152) a következők szerint:
Meglévő kódFOR i:= 65 TO 255 DO BEGIN c := i; CharsNavision[i-64] := c; END; IF ISCLEAR(BSTRConverterBody) THEN CREATE(BSTRConverterBody); BSTRConverterBody.ResetBSTR; BSTRConverterBody.AppendNextStringPortion(CharsNavision); CharsWindows := BSTRConverterBody.BSTR(); IF STRLEN(CharsWindows) <> STRLEN(CharsNavision) THEN BEGIN IF (STRLEN(CharsWindows) = STRLEN(CharsNavision) + 2) AND (CharsWindows[1] = '"') AND (CharsWindows[STRLEN(CharsWindows)] = '"') THEN CharsWindows := COPYSTR(CharsWindows,2,STRLEN(CharsWindows) - 2) ELSE CharsWindows := CharsNavision; // Not possible to translate. END;Helyettesítő kód
FOR i:= 65 TO 255 DO BEGIN c := i; CharsWindows[i - 64] := c; END; CharFile.CREATETEMPFILE; TempFileName := CharFile.NAME + '.txt'; CharFile.CLOSE; CharFile.CREATE(TempFileName); CharFile.TEXTMODE := TRUE; CharFile.WRITE(CharsWindows); CharFile.CLOSE; TempFileName := ThreeTierMngt.DownloadTempFile(TempFileName); xlApp.Workbooks.OpenText(TempFileName); xlWorkSheet := xlApp.ActiveSheet; CharsNavision := xlWorkSheet.Range('A1').Value; xlApp.ActiveWorkbook.Close(FALSE); IF NOT ISSERVICETIER THEN ERASE(TempFileName); IF STRLEN(CharsWindows) <> STRLEN(CharsNavision) THEN IF (STRLEN(CharsWindows) = STRLEN(CharsNavision) - 2) AND (CharsNavision[1] = '"') AND (CharsNavision[STRLEN(CharsNavision)] = '"') THEN CharsNavision := COPYSTR(CharsNavision,2,STRLEN(CharsNavision) - 2) ELSE CharsNavision := CharsWindows; // Not possible to translate.Módosítsa a kódot az Elemelemzés exportálása funkció FillOutItem függvényében, kódegység (7152). Cserélje le az "IF ShowName THEN BEGIN" kód két előfordulását a következők szerint:
Meglévő kódIF ShowName THEN BEGINHelyettesítő kód
IF ShowName AND (Item <> '') THEN BEGIN
Előfeltételek
A gyorsjavítás alkalmazásához az alábbi termékek egyikének telepítve kell lennie:
- A Microsoft Dynamics NAV 2009 R2 nem angol nyelvű verziói
- A Microsoft Dynamics NAV 2009 Service Pack 1 (SP1) nem angol nyelvű verziói
Eltávolítással kapcsolatos információk
Ez a gyorsjavítás nem távolítható el.
Állapot
A Microsoft megerősítette, hogy ez egy olyan probléma a Microsoft-termékekben, amely az „Érintett szolgáltatás“ című szakaszban van felsorolva.
Megjegyzés: Ez egy "GYORS KÖZZÉTÉTELŰ" cikk, amelyet közvetlenül a Microsoft támogatási szervezete készített. A dokumentumban szereplő információkat adott formában bocsátjuk rendelkezésre, a felmerülő problémákra adott válaszként. A rendelkezésre bocsátás gyorsasága következtében az anyagok sajtóhibákat tartalmazhatnak, és bármikor, előzetes értesítés nélkül felülvizsgálhatók. További szempontokat a használati feltételekben talál.