したがって、ERP システムを実行する AIX (ugh) サーバーがあります。このシステムに組み込まれているレポートは最悪なので、もちろん私は必要なレポートを作成する任務を負っています。
私が実行した多くのレポートがありますが、もちろんそのほとんどは特定の日付などに関するものです。コーディングは、Windows 2003 Standard Server ボックス上の ASP.net で実行される C# で行われます。Informix CSDK を使用して、CSDK に付属の .Net Data Adapter 経由で接続します。サーバーは、AIX 5.2 サーバー上で Informix 10 を実行します。
奇妙なのは、Informix を開始および停止したり、サーバーを再起動したりするたびに、Informix が CSDK を介して日付を処理する方法を変更することを決定したように見えることです。現在 MM/DD/YYYY を期待している場合、最終的には上記の状況の後に YYYY/MM/DD でそれが必要であると判断します。これにより、通常、「無効な月の日付」エラーが発生します。次に、dateformat 関数 (簡単に行ったり来たりできるように作成されています) に入り、手動で変更します。このエラーの処理で作成したいくつかのレポートを作成し、別の形式の日付で同じクエリを再試行します。もちろん、これは理想的とは言えません。その真相を突き止めたいと思います。
ASP.net ページ エラーから貼り付けたテキストを次に示します。ありがとう!
「/」アプリケーションでサーバー エラーが発生しました。 ERROR [HY000] [Informix .NET プロバイダ][Informix]日付の月が無効です 説明: 現在の Web 要求の実行中に未処理の例外が発生しました。エラーの詳細とコード内のどこでエラーが発生したかについては、スタック トレースを確認してください。 例外の詳細: IBM.Data.Informix.IfxException: ERROR [HY000] [Informix .NET プロバイダー][Informix]日付の月が無効です ソース エラー: 479 行目: 480 行目: //aUsage = new IfxDataAdapter(sSelect_Usage, conn); 481 行目: aUsage.Fill(dsUsage, "Usage"); 行 482: aUsage.Dispose(); 行 483: dtUsage = dsUsage.Tables["使用法"]; ソース ファイル: D:\Inetpub\reports2.oscarwinski.com\App_Code\IMRShipClass.cs 行: 481 スタックトレース: [IfxException: エラー [HY000] [Informix .NET プロバイダー][Informix]日付の月が無効です] IBM.Data.Informix.IfxConnection.HandleError(IntPtr hHandle, SQL_HANDLE hType, RETCODE retcode) +26 IBM.Data.Informix.IfxCommand.ExecuteReaderObject(CommandBehavior 動作、文字列メソッド) +654 IBM.Data.Informix.IfxCommand.ExecuteReader(CommandBehavior 動作) +117 IBM.Data.Informix.IfxCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior 動作) +4 System.Data.Common.DbDataAdapter.FillInternal(DataSet データセット、DataTable[] データテーブル、Int32 startRecord、Int32 maxRecords、String srcTable、IDbCommand コマンド、CommandBehavior 動作) +130 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet、Int32 startRecord、Int32 maxRecords、String srcTable、IDbCommand コマンド、CommandBehavior 動作) +287 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable) +92 IMRShipClass.Generate() in D:\Inetpub\reports2.oscarwinski.com\App_Code\IMRShipClass.cs:481 IMRShip.testIMR() in D:\Inetpub\reports2.oscarwinski.com\IMRShip.aspx.cs:114 D:\Inetpub\reports2.oscarwinski.com\IMRShip.aspx.cs:259 の IMRShip.btnExport2Excel_Click1(オブジェクト送信者、EventArgs e) System.Web.UI.WebControls.Button.OnClick(EventArgs e) +111 System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +110 System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36 System.Web.UI.Page.ProcessRequestMain (ブール値 includeStagesBeforeAsyncPoint、ブール値 includeStagesAfterAsyncPoint) +1565 バージョン情報: Microsoft .NET Framework バージョン:2.0.50727.3082; ASP.NET バージョン:2.0.50727.3082