Tämä artikkeli koskee Microsoft Dynamics NAV -ohjelmaa seuraavissa maissa ja kielialueilla.
- ranska (Sveitsi) (fr-ch)
- saksa (Sveitsi) (de-ch)
- italia (Sveitsi) (it-ch)
Ongelman ilmenemistapa
Kun avaat budjettimatriisin Kustannuslaskenta-kohdassa Microsoft Dynamics 2009:n sveitsinkielisessä versiossa olevalla Roolitailored-asiakasohjelmalla (RTC), et voi muokata budjettimatriisin arvoja. Tämän vuoksi kustannusbudjettia ei voi syöttää Kustannuslaskenta-kohtaan.
Tämä ongelma ilmenee seuraavissa tuotteissa:
- Microsoft Dynamics NAV 2009 R2:n sveitsiläinen versio
- Microsoft Dynamics NAV 2009 Service Pack 1:n (SP1) sveitsiläinen versio
Ratkaisu
Hotfix-tiedot
Tuettu hotfix-korjaus on nyt saatavilla Microsoftilta. Sen tarkoituksena on kuitenkin korjata vain tässä artikkelissa kuvattu ongelma. Käytä sitä vain järjestelmissä, joissa on tämä ongelma. Tämä hotfix-korjaus voi saada lisätestejä. Jos ongelma ei siis vaikuta sinuun vakavasti, suosittelemme odottamaan seuraavaa Microsoft Dynamics NAV 2009 Service Pack -pakettia tai seuraavaa Microsoft Dynamics NAV -versiota, joka sisältää tämän hotfix-korjauksen.
Huomautus Erityistapauksissa tukipuheluista tavallisesti aiheutuvat maksut voidaan peruuttaa, jos Microsoft Dynamicsin ja siihen liittyvien tuotteiden teknisen tuen asiantuntija määrittää, että tietty päivitys ratkaisee ongelmasi. Tavanomaiset tukikustannukset koskevat muita tukikysymyksiä ja -ongelmia, jotka eivät ole oikeutettuja kyseiseen päivitykseen.
Asennustiedot
Microsoft tarjoaa ohjelmointiesimerkkejä vain havainnollistamista varten ilman ilmaistua tai oletettua takuuta. Tämä sisältää muun muassa oletetut takuut soveltuvuudesta kaupankäynnin kohteeksi tai sopivuudesta tiettyyn tarkoitukseen. Tässä artikkelissa oletetaan, että tunnet ohjelmointikielen, jota esitellään, sekä työkalut, joita käytetään toimintosarjojen luomiseen ja virheenkorjaukseen. Microsoftin tukihenkilöt voivat auttaa selittämään tietyn toimintosarjan toiminnallisuuden. He eivät kuitenkaan muokkaa näitä esimerkkejä tarjotakseen lisätoimintoja tai luodakseen toimintosarjoja, jotka vastaavat tarpeitasi.
Huomautus Varmista ennen tämän hotfix-korjauksen asentamista, että kaikki Microsoft Dynamics NAV -asiakasohjelman käyttäjät ovat kirjautuneet ulos järjestelmästä. Tämä sisältää Microsoft Dynamics NAV -sovelluspalvelimen (NAS) palvelut. Sinun pitäisi olla ainoa asiakaskäyttäjä, joka on kirjautunut sisään, kun otat tämän hotfix-korjauksen käyttöön.
Jotta voit ottaa tämän hotfix-korjauksen käyttöön, sinulla on oltava kehittäjän käyttöoikeus.
Suosittelemme, että käyttäjätilille, joka on Windowsin kirjautumisikkunassa tai Tietokannan kirjautumiset -ikkunassa, määritetään "SUPER"-roolitunnus. Jos käyttäjätilille ei voi määrittää "SUPER"-roolitunnusta, sinun on varmistettava, että käyttäjätilillä on seuraavat käyttöoikeudet:
- Muutettavan objektin Muokkaa-käyttöoikeus.
- System Object ID 5210 -objektin ja System Object ID 9015 -objektin Suoritus-oikeus.
Huomautus Sinulla ei tarvitse olla oikeuksia tietosäilöihin, ellei sinun tarvitse korjata tietoja.
Koodin muutokset
Huomautus Testaa koodikorjaukset aina valvotussa ympäristössä, ennen kuin otat korjaukset käyttöön tuotantotietokoneissasi.
Voit ratkaista tämän ongelman seuraavasti:
Muuta Kausimatriisin kustannusbudjetin (36883) Ominaisuudet-kohdan koodia seuraavasti:
Aiemmin luotu koodi} PROPERTIES { Width=20790; Height=6380; // Delete the following line. Editable=No; // End of the deleted line. CaptionML=ENU=Cost Budget per Period Matrix; InsertAllowed=No; DeleteAllowed=No; LinksAllowed=No; SourceTable=Table3010551;Korvaava koodi
} PROPERTIES { Width=20790; Height=6380; CaptionML=ENU=Cost Budget per Period Matrix; InsertAllowed=No; DeleteAllowed=No; LinksAllowed=No; SourceTable=Table3010551;Muuta kausimatriisin kustannusbudjetin ohjausobjektien koodia (36883) seuraavasti:
Olemassa oleva koodi 1IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field1.UPDATEFONTBOLD := TRUE; // CA0002.end END; OnDrillDown=BEGIN MATRIX_OnDrillDown(1); END; } { 1051;Label ;0 ;0 ;0 ;0 ;ParentControl=1015;Korvaava koodi 1
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field1.UPDATEFONTBOLD := TRUE; // CA0002.end END; // Add the following lines. OnValidate=BEGIN UpdateAmount(1); END; // End of the added lines. OnDrillDown=BEGIN MATRIX_OnDrillDown(1); END; } { 1051;Label ;0 ;0 ;0 ;0 ;ParentControl=1015;Nykyinen koodi 2
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field2.UPDATEFONTBOLD := TRUE; // CA0002.end END; OnDrillDown=BEGIN MATRIX_OnDrillDown(2); END; } { 1052;Label ;0 ;0 ;0 ;0 ;ParentControl=1016;Korvaava koodi 2
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field2.UPDATEFONTBOLD := TRUE; // CA0002.end END; // Add the following lines. OnValidate=BEGIN UpdateAmount(2); END; // End of the added lines. OnDrillDown=BEGIN MATRIX_OnDrillDown(2); END; } { 1052;Label ;0 ;0 ;0 ;0 ;ParentControl=1016;Olemassa oleva koodi 3
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field3.UPDATEFONTBOLD := TRUE; // CA0002.end END; OnDrillDown=BEGIN MATRIX_OnDrillDown(3); END; } { 1053;Label ;0 ;0 ;0 ;0 ;ParentControl=1017;Korvaava koodi 3
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field3.UPDATEFONTBOLD := TRUE; // CA0002.end END; // Add the following lines. OnValidate=BEGIN UpdateAmount(3); END; // End of the added lines. OnDrillDown=BEGIN MATRIX_OnDrillDown(3); END; } { 1053;Label ;0 ;0 ;0 ;0 ;ParentControl=1017;Olemassa oleva koodi 4
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field4.UPDATEFONTBOLD := TRUE; // CA0002.end END; OnDrillDown=BEGIN MATRIX_OnDrillDown(4); END; } { 1054;Label ;0 ;0 ;0 ;0 ;ParentControl=1018;Korvaava koodi 4
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field4.UPDATEFONTBOLD := TRUE; // CA0002.end END; // Add the following lines. OnValidate=BEGIN UpdateAmount(4); END; // End of the added lines. OnDrillDown=BEGIN MATRIX_OnDrillDown(4); END; } { 1054;Label ;0 ;0 ;0 ;0 ;ParentControl=1018;Olemassa oleva koodi 5
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field5.UPDATEFONTBOLD := TRUE; // CA0002.end END; OnDrillDown=BEGIN MATRIX_OnDrillDown(5); END; } { 1055;Label ;0 ;0 ;0 ;0 ;ParentControl=1019;Korvaava koodi 5
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field5.UPDATEFONTBOLD := TRUE; // CA0002.end END; // Add the following lines. OnValidate=BEGIN UpdateAmount(5); END; // End of the added lines. OnDrillDown=BEGIN MATRIX_OnDrillDown(5); END; } { 1055;Label ;0 ;0 ;0 ;0 ;ParentControl=1019;Olemassa oleva koodi 6
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field6.UPDATEFONTBOLD := TRUE; // CA0002.end END; OnDrillDown=BEGIN MATRIX_OnDrillDown(6); END; } { 1056;Label ;0 ;0 ;0 ;0 ;ParentControl=1020;Korvaava koodi 6
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field6.UPDATEFONTBOLD := TRUE; // CA0002.end END; // Add the following lines. OnValidate=BEGIN UpdateAmount(6); END; // End of the added lines. OnDrillDown=BEGIN MATRIX_OnDrillDown(6); END; } { 1056;Label ;0 ;0 ;0 ;0 ;ParentControl=1020;Olemassa oleva koodi 7
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field7.UPDATEFONTBOLD := TRUE; // CA0002.end END; OnDrillDown=BEGIN MATRIX_OnDrillDown(7); END; } { 1057;Label ;0 ;0 ;0 ;0 ;ParentControl=1021;Korvaava koodi 7
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field7.UPDATEFONTBOLD := TRUE; // CA0002.end END; // Add the following lines. OnValidate=BEGIN UpdateAmount(7); END; // End of the added lines. OnDrillDown=BEGIN MATRIX_OnDrillDown(7); END; } { 1057;Label ;0 ;0 ;0 ;0 ;ParentControl=1021;Olemassa oleva koodi 8
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field8.UPDATEFONTBOLD := TRUE; // CA0002.end END; OnDrillDown=BEGIN MATRIX_OnDrillDown(8); END; } { 1058;Label ;0 ;0 ;0 ;0 ;ParentControl=1022;Korvaava koodi 8
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field8.UPDATEFONTBOLD := TRUE; // CA0002.end END; // Add the following lines. OnValidate=BEGIN UpdateAmount(8); END; // End of the added lines. OnDrillDown=BEGIN MATRIX_OnDrillDown(8); END; } { 1058;Label ;0 ;0 ;0 ;0 ;ParentControl=1022;Nykyinen koodi 9
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field9.UPDATEFONTBOLD := TRUE; // CA0002.end END; OnDrillDown=BEGIN MATRIX_OnDrillDown(9); END; } { 1059;Label ;0 ;0 ;0 ;0 ;ParentControl=1023;Korvaava koodi 9
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field9.UPDATEFONTBOLD := TRUE; // CA0002.end END; // Add the following lines. OnValidate=BEGIN UpdateAmount(9); END; // End of the added lines. OnDrillDown=BEGIN MATRIX_OnDrillDown(9); END; } { 1059;Label ;0 ;0 ;0 ;0 ;ParentControl=1023;Olemassa oleva koodi 10
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field10.UPDATEFONTBOLD := TRUE; // CA0002.end END; OnDrillDown=BEGIN MATRIX_OnDrillDown(10); END; } { 1060;Label ;0 ;0 ;0 ;0 ;ParentControl=1024;Korvaava koodi 10
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field10.UPDATEFONTBOLD := TRUE; // CA0002.end END; // Add the following lines. OnValidate=BEGIN UpdateAmount(10); END; // End of the added lines. OnDrillDown=BEGIN MATRIX_OnDrillDown(10); END; } { 1060;Label ;0 ;0 ;0 ;0 ;ParentControl=1024;Olemassa oleva koodi 11
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field11.UPDATEFONTBOLD := TRUE; // CA0002.end END; OnDrillDown=BEGIN MATRIX_OnDrillDown(11); END; } { 1061;Label ;0 ;0 ;0 ;0 ;ParentControl=1025;Korvaava koodi 11
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field11.UPDATEFONTBOLD := TRUE; // CA0002.end END; // Add the following lines. OnValidate=BEGIN UpdateAmount(11); END; // End of the added lines. OnDrillDown=BEGIN MATRIX_OnDrillDown(11); END; } { 1061;Label ;0 ;0 ;0 ;0 ;ParentControl=1025;Olemassa oleva koodi 12
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field12.UPDATEFONTBOLD := TRUE; // CA0002.end END; OnDrillDown=BEGIN MATRIX_OnDrillDown(12); END; } { 1062;Label ;0 ;0 ;0 ;0 ;ParentControl=1026;Korvaava koodi 12
IF "Line Type" <> "Line Type"::"Cost Type" THEN CurrForm.Field12.UPDATEFONTBOLD := TRUE; // CA0002.end END; // Add the following lines. OnValidate=BEGIN UpdateAmount(12); END; // End of the added lines. OnDrillDown=BEGIN MATRIX_OnDrillDown(12); END; } { 1062;Label ;0 ;0 ;0 ;0 ;ParentControl=1026;Muuta kausimatriisin kustannusbudjetin (36883) yleisten muuttujien koodia seuraavasti:
Aiemmin luotu koodiBudgetFilter@1150004 : Code[10]; MATRIX_ColumnCaption@1150005 : ARRAY [12] OF Text[80]; AmtType@1150006 : 'Balance at Date,Net Change'; RoundingFactor@1150007 : 'None,1,1000,1000000'; MATRIX_CellData@1150008 : ARRAY [32] OF Decimal; LOCAL PROCEDURE SetDateFilter@1150000(MATRIX_ColumnOrdinal@1150000 : Integer); BEGIN IF AmtType = AmtType::"Net Change" THEN IF MatrixRecords[MATRIX_ColumnOrdinal]."Period Start" = MatrixRecords[MATRIX_ColumnOrdinal]."Period End" THENKorvaava koodi
BudgetFilter@1150004 : Code[10]; MATRIX_ColumnCaption@1150005 : ARRAY [12] OF Text[80]; AmtType@1150006 : 'Balance at Date,Net Change'; RoundingFactor@1150007 : 'None,1,1000,1000000'; MATRIX_CellData@1150008 : ARRAY [32] OF Decimal; // Add the following lines. Text000@1150011 : TextConst 'ENU=Set View As to Net Change before you edit entries.'; Text001@1150012 : TextConst 'ENU=%1 or %2 must not be blank.'; CurrRegNo@11500010 : Integer; // End of the added lines. LOCAL PROCEDURE SetDateFilter@1150000(MATRIX_ColumnOrdinal@1150000 : Integer); BEGIN IF AmtType = AmtType::"Net Change" THEN IF MatrixRecords[MATRIX_ColumnOrdinal]."Period Start" = MatrixRecords[MATRIX_ColumnOrdinal]."Period End" THENMuuta UpdateAmount-funktion koodia Kausimatriisikohtainen kustannus -lomakkeessa (36883) seuraavasti:
Aiemmin luotu koodiRoundingFactor::"1000000": MATRIX_CellData[ColumnID] := ROUND(MATRIX_CellData[ColumnID] / 1000000,0.1); END; END; BEGIN { <changelog> <add id="CA0001" dev="kcools" date="2007-02-21" area="COSTACCTNG" feature="PSCORS1209" releaseversion="CACEM6.00">Korvaava koodi
RoundingFactor::"1000000": MATRIX_CellData[ColumnID] := ROUND(MATRIX_CellData[ColumnID] / 1000000,0.1); END; END; // Add the following lines. LOCAL PROCEDURE UpdateAmount@1150005(ColumnID@1150000 : Integer); BEGIN IF AmtType <> AmtType::"Net Change" THEN ERROR(Text000); IF (CostCenterFilter = '') AND (CostObjectFilter = '') THEN ERROR(Text001,FIELDCAPTION("Cost Center Filter"),FIELDCAPTION("Cost Object Filter")); SetFilters(ColumnID); CALCFIELDS("Budget Amount"); InsertMatrixCostBudgetEntry(CurrRegNo,ColumnID); END; LOCAL PROCEDURE SetFilters@1150006(ColumnID@1150000 : Integer); BEGIN SetDateFilter(ColumnID); SETFILTER("Cost Center Filter",CostCenterFilter); SETFILTER("Cost Object Filter",CostObjectFilter); SETFILTER("Budget Filter",BudgetFilter); END; LOCAL PROCEDURE InsertMatrixCostBudgetEntry@1150007(VAR RegNo@1150000 : Integer;ColumnID@1150001 : Integer); VAR MatrixCostBudgetEntry@1150003 : Record 3010571; BEGIN MatrixCostBudgetEntry.INIT; MatrixCostBudgetEntry."Budget Name" := BudgetFilter; MatrixCostBudgetEntry."Cost Type No." := "No."; MatrixCostBudgetEntry.Date := MatrixRecords[ColumnID]."Period Start"; MatrixCostBudgetEntry."Cost Center Code" := CostCenterFilter; MatrixCostBudgetEntry."Cost Object Code" := CostObjectFilter; MatrixCostBudgetEntry.Amount := MATRIX_CellData[ColumnID] - "Budget Amount"; MatrixCostBudgetEntry.INSERT(TRUE); END; // End of the added lines. BEGIN { <changelog> <add id="CA0001" dev="kcools" date="2007-02-21" area="COSTACCTNG" feature="PSCORS1209" releaseversion="CACEM6.00">
Edellytykset
Sinulla on oltava asennettuna jokin seuraavista tuotteista, jotta voit käyttää tätä hotfix-korjausta:
- Microsoft Dynamics NAV 2009 R2:n sveitsiläinen versio
- Microsoft Dynamics NAV 2009 Service Pack 1:n sveitsiläinen versio
Poistotiedot
Et voi poistaa tätä hotfix-korjausta.
Tila
Microsoft on vahvistanut tämän olevan ongelma niissä Microsoftin tuotteissa, jotka ovat listattuna Koskee seuraavia tuotteita -osiossa.
Huomautus Tämä on FAST PUBLISH -artikkeli, joka on luotu suoraan Microsoftin tukiorganisaatiosta. Tässä annetut tiedot annetaan sellaisenaan vastauksena uusiin ongelmiin. Koska materiaalit ovat nopeasti käytettävissä, ne voivat sisältää typografisia virheitä, ja niitä voidaan muuttaa milloin tahansa ilman ennakkoilmoitusta. Lisätietoja on ohjeaiheessa Käyttöehdot .