所以我们有一个运行 ERP 系统的 AIX (ugh) 服务器。这个系统的内置报告很糟糕,所以我当然要负责构建我们需要的报告。
我有很多我运行的报告,当然大多数是针对特定日期的,等等。编码是在 Windows 2003 标准服务器框上的 ASP.net 中运行的 C# 中完成的。它使用 Informix CSDK 通过 CSDK 附带的 .Net 数据适配器进行连接。该服务器在 AIX 5.2 服务器上运行 Informix 10。
奇怪的是,每当我们启动和停止 Informix 或重新启动服务器等时,似乎 Informix 决定改变它通过 CSDK 处理日期的方式。如果它当前期待 MM/DD/YYYY,那么它最终会在上述情况之后决定是否希望它在 YYYY/MM/DD 中。这通常最终会给我一个“Invalid Month in Date”错误。然后我进入我的 dateformat 函数(使我可以轻松地来回切换)并手动更改它。我在处理此错误时构建了一些报告,然后使用其他格式的日期重试相同的查询。这当然不太理想,我想深入了解它!
这是 ASP.net 页面错误中的一些粘贴文本。谢谢!
“/”应用程序中的服务器错误。 错误 [HY000] [Informix .NET 提供程序][Informix] 日期月份无效 说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关该错误及其源自代码的位置的更多信息。 异常详细信息:IBM.Data.Informix.IfxException: ERROR [HY000] [Informix .NET provider][Informix]Invalid month in date 源错误: 第 479 行: 第 480 行://aUsage = new IfxDataAdapter(sSelect_Usage, conn); 第 481 行:aUsage.Fill(dsUsage, "Usage"); 第 482 行:aUsage.Dispose(); 第 483 行:dtUsage = dsUsage.Tables["Usage"]; 源文件: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 D:\Inetpub\reports2.oscarwinski.com\App_Code\IMRShipClass.cs:481 中的 IMRShipClass.Generate() D:\Inetpub\reports2.oscarwinski.com\IMRShip.aspx.cs:114 中的 IMRShip.testIMR() 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(字符串 eventArgument)+110 System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(字符串 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