ALV-ilmoitusraportin tulostamisen Vaihtoehto-välilehti puuttuu, kun olet asentanut uusimman ALV-päivityksen RoleTailored client (RTC) -ohjelmaan Microsoft Dynamics NAV 2009:n itävallankielisessä versiossa.

Käytetään kohteeseen
Dynamics NAV 2009

Tämä artikkeli koskee Microsoft Dynamics NAV -ohjelmaa itävallan (at) kielikielellä.

Ongelman ilmenemistapa

Oletetaan, että asennat uusimman ALV-päivityksen Microsoft Dynamics NAV 2009 R2:n itävallan versiolle ja Microsoft Dynamics NAV 2009 Service Pack 1:lle (SP1). Kun tulostat ALV-lausekeraportin (11110) Roolipohjaisessa asiakasohjelmassa (RTC), Muokkaa ALV-lauseketta -valintaikkunan Vaihtoehto-välilehti puuttuu etkä voi määrittää ALV-lausekeraporttia. Perinteisessä asiakasohjelmassa voit kuitenkin tulostaa raportin odotetulla tavalla. Lisätietoja uusimmasta ALV-päivityksestä on jossakin seuraavista Microsoftin sivustoista:

Kumppanit:

ALV-lausekkeen asettelun muutos 2012 Microsoft Dynamics NAV 2009 SP1:lle - Itävalta Asiakkaat:

ALV-lausekkeen asettelun muutos 2012 Microsoft Dynamics NAV 2009 SP1:lle - Itävalta

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 Navision -asiakasohjelman käyttäjät ovat kirjautuneet ulos järjestelmästä. Tämä koskee myös Microsoft Navision Application Services (NAS) -asiakaskäyttäjiä. 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 muuttamalla ALV-ilmoitusraportin koodia (11110). Voit tehdä tämän seuraavasti:

  1. Muuta pyyntölomakkeen koodia seuraavasti:
    Aiemmin luotu koodi

    ...
    {
    
    // Delete the following lines.
    }
    CONTROLS
    {
    // End of the deleted lines.
    
    }
    ...
    

    Korvaava koodi

    ...
    {
    
    // Add the following lines.
     SaveValues=Yes;
     OnInit=BEGIN
     XMLFilenameControlVisible := TRUE;
     FDFFilenameControlVisible := TRUE;
     END;
    
     OnOpenPage=BEGIN
     CLEAR(NumberPar6Abs1);
    
     IF (Startingdate <> 0D) AND (Endingdate <> 0D) THEN BEGIN
     IF (Startingdate = CALCDATE('<-CQ>',Startingdate)) AND (Endingdate = CALCDATE('<+CQ>',Startingdate)) THEN
     PeriodType := PeriodType::quarter
     ELSE IF (Startingdate = CALCDATE('<-CM>',Startingdate)) AND (Endingdate = CALCDATE('<+CM>',Startingdate)) THEN
     PeriodType := PeriodType::month
     ELSE
     PeriodType := PeriodType::"defined period";
     END ELSE
     PeriodType := PeriodType::"defined period";
    
     FDFFilenameControlVisible := NOT ISSERVICETIER;
     XMLFilenameControlVisible := NOT ISSERVICETIER;
     END;
      }
     CONTROLS
     {
     { 1900000001;0;Container;
     ContainerType=ContentArea }
    
     { 1900000002;1;Group ;
     CaptionML=ENU=Options }
    
     { 1160010;2;Field ;
     CaptionML=[ENU=Starting Date;
     DEA=Startdatum];
     SourceExpr=Startingdate;
     OnValidate=VAR
     RefDate@1160000 : Date;
     BEGIN
     CLEAR(RefDate);
     IF Startingdate <> 0D THEN
     RefDate := Startingdate
     ELSE IF Endingdate <> 0D THEN
     RefDate := Endingdate;
     IF RefDate <> 0D THEN BEGIN
     IF PeriodType = PeriodType::quarter THEN BEGIN
     Startingdate := CALCDATE('<-CQ>',RefDate);
     Endingdate := CALCDATE('<+CQ>',RefDate);
     END ELSE IF PeriodType = PeriodType::month THEN BEGIN
     Startingdate := CALCDATE('<-CM>',RefDate);
     Endingdate := CALCDATE('<+CM>',RefDate);
     END ELSE BEGIN
     IF Endingdate = 0D THEN
     Endingdate := RefDate;
     IF Startingdate = 0D THEN
     Startingdate := RefDate;
     END;
     END;
     END;
     }
    
     { 1160012;2;Field ;
     CaptionML=[ENU=Ending Date;
     DEA=Enddatum];
     SourceExpr=Endingdate;
     OnValidate=VAR
     RefDate@1160000 : Date;
     BEGIN
     CLEAR(RefDate);
     IF Endingdate <> 0D THEN
     RefDate := Endingdate
     ELSE IF Startingdate <> 0D THEN
     RefDate := Startingdate;
     IF RefDate <> 0D THEN BEGIN
     IF PeriodType = PeriodType::quarter THEN BEGIN
     Startingdate := CALCDATE('<-CQ>',RefDate);
     Endingdate := CALCDATE('<+CQ>',RefDate);
     END ELSE IF PeriodType = PeriodType::month THEN BEGIN
     Startingdate := CALCDATE('<-CM>',RefDate);
     Endingdate := CALCDATE('<+CM>',RefDate);
     END ELSE BEGIN
     IF Startingdate = 0D THEN
     Startingdate := RefDate;
     IF Endingdate = 0D THEN
     Endingdate := RefDate;
     END;
     END;
     END;
     }
    
     { 8 ;2 ;Field ;
     CaptionML=[ENU=Include VAT Entries;
     DEA=MwSt.-Posten einschlieáen];
     OptionCaptionML=[ENU=Open,Closed,Open and Closed;
     DEA=Offen,Geschlossen,Offen und geschlossen];
     SourceExpr=Selection }
    
     { 4 ;2 ;Field ;
     CaptionML=[ENU=Include VAT Entries;
     DEA=MwSt.-Posten einschlieáen];
     OptionCaptionML=[ENU=Before and Within Period,Within Period;
     DEA=Vor und innerhalb Periode,Innerhalb Periode];
     SourceExpr=PeriodSelection }
    
     { 11 ;2 ;Field ;
     CaptionML=[ENU=Reporting Type;
     DEA=Berichtstyp];
     OptionCaptionML=[ENU=Quarter,Month,Defined period;
     DEA=Quartal,Monat,Definierte Periode];
     SourceExpr=PeriodType;
     OnValidate=BEGIN
     IF PeriodType = PeriodType::month THEN
     monthPeriodTypeOnValidate;
     IF PeriodType = PeriodType::quarter THEN
     quarterPeriodTypeOnValidate;
     END;
     }
    
     { 1160007;2;Field ;
     CaptionML=[ENU=Check Positions;
     DEA=Positionen prfen];
     SourceExpr=CheckPositions }
    
     { 1 ;2 ;Field ;
     CaptionML=[ENU=Round to Whole Numbers;
     DEA=Auf ganze Zahlen runden];
     SourceExpr=PrintInWholeNumbers }
    
     { 1160015;2;Field ;
     Name=PDFFilenameControl;
     CaptionML=[ENU=PDF File Name;
     DEA=PDF-Dateiname];
     SourceExpr=PDFFileName;
     OnAssistEdit=BEGIN
     PDFFileName := CommonDlgMgt.OpenFile(Text1160052,PDFFileName,4,Text1160053,0);
     END;
     }
    
     { 1160017;2;Field ;
     Name=FDFFilenameControl;
     CaptionML=[ENU=FDF File Name;
     DEA=FDF-Dateiname];
     SourceExpr=FDFFileName;
     Visible=FDFFilenameControlVisible;
     OnAssistEdit=BEGIN
     FDFFileName := CommonDlgMgt.OpenFile(Text1160054,FDFFileName,4,Text1160055,1);
     END;
     }
    
     { 1160001;2;Field ;
     Name=XMLFilenameControl;
     CaptionML=[ENU=XML File Name;
     DEA=XML-Dateiname];
     SourceExpr=XMLFileName;
     Visible=XMLFilenameControlVisible;
     OnAssistEdit=BEGIN
     XMLFileName := CommonDlgMgt.OpenFile(Text1160056,XMLFileName,4,Text1160057,1);
     END;
     }
    
     { 1160003;2;Field ;
     CaptionML=[ENU=Surplus Used to Pay Dues;
     DEA=Fr Zahlung von Verbindlichkeiten genutzter šberschuss];
     SourceExpr=UseARE }
    
     { 1160005;2;Field ;
     CaptionML=[ENU=Additional Invoices sent via Mail;
     DEA=Weitere per Post geschickte Rechnungen];
     SourceExpr=UseREPO }
    
     { 1160000;2;Field ;
     CaptionML=[ENU=Number õ6 Abs. 1;
     DEA=Nummer õ 6 Abs. 1];
     Numeric=Yes;
     BlankZero=Yes;
     SourceExpr=NumberPar6Abs1;
     MinValue=0;
     MaxValue=99 }
    // End of the added lines.
    
    }
    ...
    
  2. Lisää yleinen muuttuja ja määritä muuttuja seuraavasti:

    • Nimi: FDFFilenameControlVisible
    • DataType: Totuusarvo
    • Alatyyppi: INDATASET
  3. Lisää yleinen muuttuja ja määritä muuttuja seuraavasti:

    • Nimi: XMLFilenameControlVisible
    • DataType: Totuusarvo
    • Alatyyppi: INDATASET
  4. Muuta vuosineljänneksenPeriodTypeOnValidatefunction koodi seuraavasti:
    Aiemmin luotu koodi

    ...
    BEGIN
    ...
    
    

    Korvaava koodi

    ...
    
    // Add the following lines.
    LOCAL PROCEDURE quarterPeriodTypeOnValidate@19029369();
    BEGIN
     IF Startingdate <> 0D THEN
     IF (Startingdate <> CALCDATE('<-CQ>',Startingdate)) OR (Endingdate <> CALCDATE('<+CQ>',Startingdate)) THEN
     IF CONFIRM(Text1160061, TRUE) THEN BEGIN
     Startingdate := CALCDATE('<-CQ>',Startingdate);
     Endingdate := CALCDATE('<+CQ>',Startingdate);
     END ELSE
     ERROR('');
     END;
    
     LOCAL PROCEDURE monthPeriodTypeOnValidate@19063435();
     BEGIN
     IF Startingdate <> 0D THEN
     IF (Startingdate <> CALCDATE('<-CM>',Startingdate)) OR (Endingdate <> CALCDATE('<+CM>',Startingdate)) THEN
     IF CONFIRM(Text1160061, TRUE) THEN BEGIN
     Startingdate := CALCDATE('<-CM>',Startingdate);
     Endingdate := CALCDATE('<+CM>',Startingdate);
     END ELSE
     ERROR('');
     END;
    // End of the added lines. 
    
    BEGIN
    ...
    

Edellytykset

Sinulla on oltava asennettuna jokin seuraavista tuotteista, jotta voit käyttää tätä hotfix-korjausta:

  • Microsoft Dynamics NAV 2009 R2:n itävallankielinen versio
  • Microsoft Dynamics NAV 2009 Service Pack 1:n itävallankielinen 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 .