この記事は、オーストリア語 (at) 言語ロケールの Microsoft Dynamics NAV に適用されます。
現象
オーストリアバージョンの Microsoft Dynamics NAV 2009 R2 と Microsoft Dynamics NAV 2009 Service Pack 1 (SP1) の最新の VAT 更新プログラムをインストールすることを想定しています。 RoleTailored クライアント (RTC) で VAT 明細書レポート (11110) を印刷すると、[VAT 明細書の編集] ダイアログ ボックスの [オプション] タブが見つからないので、VAT 明細書レポートを設定することはできません。 ただし、クラシック クライアントでは、レポートを期待どおりに印刷できます。 最新の VAT 更新プログラムの詳細については、次のいずれかの Microsoft Web サイトを参照してください。
パートナー:
Microsoft Dynamics NAV 2009 SP1 の VAT ステートメント レイアウト変更 2012 - オーストリア 顧客:
Microsoft Dynamics NAV 2009 SP1 の VAT ステートメント レイアウト変更 2012 - オーストリア
解決策
修正プログラムの情報
サポートされている修正プログラムが Microsoft から入手できるようになりました。 ただし、この記事で説明されている問題を修正することのみを目的としています。 この特定の問題が発生しているシステムにのみ適用します。 この修正プログラムは、追加のテストを受け取る場合があります。 したがって、この問題の影響を大きく受けない場合は、次の Microsoft Dynamics NAV 2009 Service Pack またはこの修正プログラムを含む次の Microsoft Dynamics NAV バージョンを待つことをおすすめします。
注 特別なケースでは、Microsoft Dynamics および関連製品のテクニカル サポート プロフェッショナルが特定の更新プログラムによって問題が解決されると判断した場合、通常はサポート呼び出しに対して発生する料金が取り消されることがあります。 ただし、特定の更新プログラムの対象とならない追加の質問および問題については、通常のサポート料金が適用されます。
インストール情報
Microsoft は、明示または黙示の保証なしで、説明のみを目的としてプログラミング例を提供しています。 これには、商品性または特定の目的への適合性に関する暗黙の保証が含まれますが、これらに限定されません。 この記事では、デモンストレーションされているプログラミング言語と、プロシージャの作成とデバッグに使用されるツールについてよく理解していることを前提としています。 Microsoft サポート エンジニアは、特定のプロシージャの機能の説明を支援できます。 ただし、これらの例を変更して、特定の要件を満たすために追加の機能を提供したりプロシージャを構築したりすることはできません。
注 この修正プログラムをインストールする前に、すべての Microsoft Navision クライアント ユーザーがシステムからログオフされていることを確認します。 これには、Microsoft Navision Application Services (NAS) クライアント ユーザーが含まれます。 この修正プログラムを実装するときにログオンする唯一のクライアント ユーザーである必要があります。
この修正プログラムを実装するには、開発者ライセンスが必要です。
[Windows ログイン] ウィンドウまたは [データベース ログイン] ウィンドウのユーザー アカウントに "SUPER" ロール ID を割り当てることをお勧めします。 ユーザー アカウントに "SUPER" ロール ID を割り当てることができない場合は、ユーザー アカウントに次のアクセス許可があることを確認する必要があります。
- 変更するオブジェクトの [変更] アクセス許可。
- システム オブジェクト ID 5210 オブジェクトとシステム オブジェクト ID 9015 オブジェクトの Execute アクセス許可。
メモ データ修復を実行する必要がない限り、データ ストアに対する権限は必要ありません。
コードの変更
メモ 運用環境のコンピューターに修正プログラムを適用する前に、制御された環境でコード修正を常にテストします。
この問題を解決するには、VAT 明細書レポート (11110) のコードを変更します。 手順は次のとおりです。
要求フォームのコードを次のように変更します。
既存のコード... { // Delete the following lines. } CONTROLS { // End of the deleted lines. } ...置換コード
... { // 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 prfen]; 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=Fr 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. } ...グローバル変数を追加し、次のように変数を指定します。
- 名前: FDFFilenameControlVisible
- DataType: ブール値
- サブタイプ: INDATASET
グローバル変数を追加し、次のように変数を指定します。
- 名前: XMLFilenameControlVisible
- DataType: ブール値
- サブタイプ: INDATASET
quarterPeriodTypeOnValidatefunction のコードを次のように変更します。
既存のコード... BEGIN ...置換コード
... // 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 ...
前提条件
この修正プログラムを適用するには、次のいずれかの製品がインストールされている必要があります。
- Microsoft Dynamics NAV 2009 R2 のオーストリア版
- Microsoft Dynamics NAV 2009 Service Pack 1 のオーストリアバージョン
アンインストール情報
この修正プログラムを削除することはできません。
状態
Microsoft は、これが "適用対象" セクションに記載されている Microsoft 製品の問題であることを確認しました。
注: この資料は、"迅速な公開" を目的としてマイクロソフト サポート組織により直接作成されたものです。 ここに含まれる情報は、新しい問題に対応するため、そのままの状態で提供されます。 情報を迅速に公開するため、この資料には誤植などが含まれる可能性があり、また、予告なく改訂される場合があります。 その他の注意事項については、使用条件を参照してください。