Exemplo n.º 1
0
        /// <summary>
        /// 定时器
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private static void TaskTimer_Elapsed(object sender, ElapsedEventArgs e)
        {
            //作者:林添喜 2006-01-25  说明:任务调用
            string _log2 = string.Format("任务调用开始!");

            if (WriteTaskInfo)
            {
                OralceLogWriter.WriteSystemLog(_log2, "INFO");
            }

            //获取任务列表
            DataTable _rwdata = SQL_TaskCommon.GetTaskList();

            if (_rwdata != null)
            {
                foreach (DataRow _dr in _rwdata.Rows)
                {
                    try
                    {
                        string _rwid = _dr["RWID"].ToString();
                        string _lb   = _dr["RZLB"].ToString();
                        string _ml   = _dr["RWML"].ToString();
                        TaskController.RunTask(_rwid, _lb, _ml);
                    }
                    catch (Exception ex)
                    {
                        string _log = string.Format("任务调用时出现错误:{0}", ex.Message);
                        OralceLogWriter.WriteSystemLog(_log, "ERROR");
                    }
                }
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// 报生成的报表ID
 /// </summary>
 /// <param name="_reportName"></param>
 /// <param name="_sDate"></param>
 /// <param name="_eDate"></param>
 /// <param name="_dwdm"></param>
 /// <returns></returns>
 private static string GetReportID(string _reportName, DateTime _sDate, DateTime _eDate, string _dwdm)
 {
     using (OracleConnection cn = OracleHelper.OpenConnection())
     {
         try
         {
             OracleCommand _cmd = new OracleCommand();
             _cmd.Connection  = cn;
             _cmd.CommandText = "select ID from TJ_ZDYBBFJXXB where BBMC=:BBMC AND TJDW=:TJDW AND KSRQ=:KSRQ and JZRQ=:JZRQ ";
             _cmd.CommandType = CommandType.Text;
             _cmd.Parameters.Add(":BBMC", _reportName);
             _cmd.Parameters.Add(":TJDW", _dwdm);
             _cmd.Parameters.Add(":KSRQ", _sDate);
             _cmd.Parameters.Add(":JZRQ", _eDate);
             object _obj = _cmd.ExecuteScalar();
             cn.Close();
             return((_obj == null) ? "" : _obj.ToString());
         }
         catch (Exception e)
         {
             string _emsg = string.Format("生成统计报表(报生成的报表ID)时发生错误!reportName={0} _dwdm={1} DATE={2} - {3} ", _reportName, _dwdm, _sDate, _eDate);
             _emsg += string.Format(" \n 错误信息:{0}", e.Message);
             OralceLogWriter.WriteSystemLog(_emsg, "ERROR");
             return("");
         }
     }
 }
Exemplo n.º 3
0
        private bool Save_ZHTJ_CS(string CSNAME, string CSDATA, string Des)
        {
            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                OracleTransaction _txn = cn.BeginTransaction();
                try
                {
                    OracleCommand _cmd = new OracleCommand(SQL_DelZHTJ_CS, cn);
                    _cmd.Parameters.Add(":CSNAME", CSNAME);
                    _cmd.ExecuteNonQuery();

                    OracleCommand _cmd2 = new OracleCommand(SQL_InsZHTJ_CS, cn);
                    _cmd2.Parameters.Add(":CSNAME", CSNAME);
                    _cmd2.Parameters.Add(":CSDATA", CSDATA);
                    _cmd2.Parameters.Add(":CSDESC", Des);
                    _cmd2.ExecuteNonQuery();
                    _txn.Commit();
                    return(true);
                }
                catch (Exception ex)
                {
                    string _err = string.Format("写入参数{0}时发生错误:{1}", CSNAME, ex.Message);
                    OralceLogWriter.WriteSystemLog(_err, "ERROR");
                    _txn.Rollback();
                    return(false);
                }
            }
        }
Exemplo n.º 4
0
        public static void WriteTaskLog(string _Rwid, int state, string _msg)
        {
            OracleCommand cmd;

            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                OracleTransaction txn = cn.BeginTransaction();
                try
                {
                    string _newmsg = (_msg.Length > 2000) ? _msg.Substring(0, 2000) : _msg;
                    cmd             = new OracleCommand();
                    cmd.Connection  = cn;
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText = "insert into gzrw_rz (rzid,rwid,rwmc,runtime,runflag,runresult) values (SEQ_YW.NEXTVAL,:RWID,'',sysdate,:STATE,:RUNRESULT)";
                    cmd.Parameters.Add(new OracleParameter(":RWID", decimal.Parse(_Rwid)));
                    cmd.Parameters.Add(new OracleParameter(":STATE", Convert.ToDecimal(state)));
                    cmd.Parameters.Add(new OracleParameter(":RUNRESULT", _newmsg));
                    cmd.ExecuteScalar();
                    txn.Commit();
                }
                catch (Exception e)
                {
                    string _log = string.Format("写入任务{1}日志表时出现错误:{0}", e.Message, _Rwid);
                    OralceLogWriter.WriteSystemLog(_log, "ERROR");
                    txn.Rollback();
                }


                cn.Close();
            }
        }
Exemplo n.º 5
0
        private static Application GetExcelApplication()
        {
            int times = 0;

            while (isBusy && times < 6000)
            {
                Thread.Sleep(100);
                times++;
            }
            ;
            isBusy = true;
            if (times > 5999)
            {
                OralceLogWriter.WriteSystemLog("Excel 程序忙!", "ERROR");
                return(null);
            }

            if (UseCount > 10)
            {
                ClearExcelApp();
                KillExcelThread();
                UseCount = 0;
            }
            UseCount++;
            if (pExcelApp == null)
            {
                beforeTime              = DateTime.Now;
                pExcelApp               = new Application();
                pExcelApp.Visible       = false;
                pExcelApp.DisplayAlerts = false;
                afterTime               = DateTime.Now;
            }

            return(pExcelApp);
        }
Exemplo n.º 6
0
        public static void ClearExcelApp()
        {
            int _ret = -1;

            try {
                if (pExcelApp != null)
                {
                    pExcelApp.Quit();
                    ReleaseAllRef(pExcelApp);
                    //_ret = System.Runtime.InteropServices.Marshal.ReleaseComObject(m_oExcelApp);
                    OralceLogWriter.WriteSystemLog(string.Format("执行关闭m_oExcelApp!ret = {0}", _ret), "INFO");
                    int generation = System.GC.GetGeneration(pExcelApp);
                }
                pExcelApp = null;
                OralceLogWriter.WriteSystemLog("完成关闭EXCEL进程!", "INFO");
                GC.Collect();
                //				GC.WaitForPendingFinalizers();
                //				GC.Collect();
                //				GC.WaitForPendingFinalizers();
            }
            catch (Exception e) {
                OralceLogWriter.WriteSystemLog(string.Format("关闭EXCEL进程时出错!{0}", e.Message), "ERROR");
            }
            finally {
                GC.Collect();
                //				GC.WaitForPendingFinalizers();
                //				GC.Collect();
                //				GC.WaitForPendingFinalizers();
            }
        }
Exemplo n.º 7
0
        public bool SaveDataInfo(WC_DataInfo DataInfo)
        {
            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                OracleTransaction _txn = cn.BeginTransaction();
                try
                {
                    OracleCommand _cmd = new OracleCommand(SQL_DelDataInfo, cn);
                    _cmd.Parameters.Add(":GZDATE", DataInfo.GZ_Date.ToString("yyyyMMdd"));
                    _cmd.ExecuteNonQuery();

                    OracleCommand _cmd2 = new OracleCommand(SQL_InsDataInfo, cn);
                    _cmd2.Parameters.Add(":GZDATA", DataInfo.GZ_Date.ToString("yyyyMMdd"));
                    _cmd2.Parameters.Add(":GZ_META", DataInfo.Meta);
                    _cmd2.Parameters.Add(":GZ_YEAR", Convert.ToDecimal(DataInfo.GZ_Date.Year));
                    _cmd2.Parameters.Add(":GZ_MONTH", Convert.ToDecimal(DataInfo.GZ_Date.Month));
                    _cmd2.Parameters.Add(":GZ_DAY", Convert.ToDecimal(DataInfo.GZ_Date.Day));
                    _cmd2.Parameters.Add(":GZ_LX", DataInfo.IsTJSBR ? (decimal)1 : (decimal)0);
                    _cmd2.Parameters.Add(":GZ_SFGZR", DataInfo.IsWorkDay ? (decimal)0 : (decimal)1);
                    _cmd2.Parameters.Add(":GZ_FXSB", DataInfo.IsFXSBR ? (decimal)1 : (decimal)0);
                    _cmd2.ExecuteNonQuery();
                    _txn.Commit();
                    return(true);
                }
                catch (Exception ex)
                {
                    string _err = string.Format("写入GZRL日期:{0}时发生错误:{1}", DataInfo.GZ_Date, ex.Message);
                    OralceLogWriter.WriteSystemLog(_err, "ERROR");
                    _txn.Rollback();
                    return(false);
                }
            }
        }
Exemplo n.º 8
0
        private bool SaveNewNotifyInfo(NotifyInfo _info)
        {
            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                OracleTransaction _txn = cn.BeginTransaction();

                try
                {
                    OracleCommand _cmd = new OracleCommand(SQL_SaveNewNotifyInfo, cn);
                    _cmd.Parameters.Add(":FBDW", SinoUserCtx.CurUser.CurrentPost.PostDWDM);
                    _cmd.Parameters.Add(":FBR", SinoUserCtx.CurUser.UserName);
                    _cmd.Parameters.Add(":LXDH", _info.TelNum);
                    _cmd.Parameters.Add(":DZYJ", _info.Email);
                    _cmd.Parameters.Add(":XXBT", _info.Title);
                    _cmd.Parameters.Add(":XXNR", _info.Context);
                    _cmd.ExecuteNonQuery();
                }
                catch (Exception e)
                {
                    string _errmsg = string.Format("删除ID={1}的通知通告信息时出错,错误信息为:{0}!",
                                                   e.Message, _info.ID);
                    OralceLogWriter.WriteSystemLog(_errmsg, "ERROR");
                    _txn.Rollback();
                    return(false);
                }

                _txn.Commit();
                cn.Close();
            }
            return(true);
        }
Exemplo n.º 9
0
        public bool DeleteNotifyInfo(NotifyInfo CurrentInfo)
        {
            string _sql = " delete from XT_GGXX where ID=:ID AND FBDW=:FBDWDM ";

            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                OracleTransaction _txn = cn.BeginTransaction();

                try
                {
                    OracleCommand _cmd = new OracleCommand(_sql, cn);
                    _cmd.Parameters.Add(":ID", decimal.Parse(CurrentInfo.ID));
                    _cmd.Parameters.Add(":FBDWDM", SinoUserCtx.CurUser.CurrentPost.PostDWDM);
                    _cmd.ExecuteNonQuery();
                }
                catch (Exception e)
                {
                    string _errmsg = string.Format("删除ID={1}的通知通告信息时出错,错误信息为:{0}!",
                                                   e.Message, CurrentInfo.ID);
                    OralceLogWriter.WriteSystemLog(_errmsg, "ERROR");
                    _txn.Rollback();
                    return(false);
                }

                _txn.Commit();
                cn.Close();
            }
            return(true);
        }
Exemplo n.º 10
0
 /// <summary>
 /// 验证口令
 /// </summary>
 /// <param name="_name"></param>
 /// <param name="_pass"></param>
 /// <returns></returns>
 override public bool Check(string _name, string _pass, string CheckType)
 {
     //1.通过三统一接口验证密码
     try
     {
         if (CUPPAPassportConfig.DebugMode)
         {
             return(_name == _pass);
         }
         else
         {
             using (OguReaderClient _orc = new OguReaderClient())
             {
                 bool _ret = _orc.CheckPwd(_name, CheckType, _pass);
                 if (CUPPAPassportConfig.CUPPA_Check_WriteLog)
                 {
                     CUPPAPassportConfig.WriteCUPPALog(string.Format("采用三统一平台验证口令返回{0},! name={1}, CUPPA_Check_Type={2}, pass={3}",
                                                                     _ret, _name, CheckType, _pass));
                 }
                 return(true);
             }
         }
     }
     catch (Exception e1)
     {
         string _error = string.Format("采用三统一平台验证口令出错:{0}\n Name={1} Pass={2}", e1.Message, _name, _pass);
         OralceLogWriter.WriteSystemLog(_error, "ERROR");
         if (CUPPAPassportConfig.CUPPA_Check_WriteLog)
         {
             CUPPAPassportConfig.WriteCUPPALog(_error);
         }
         return(false);
     }
 }
Exemplo n.º 11
0
        /// <summary>
        /// 生成报表统计数据
        /// </summary>
        /// <param name="_reportName"></param>
        /// <param name="_sDate"></param>
        /// <param name="_eDate"></param>
        /// <param name="_dwdm"></param>
        /// <returns></returns>
        private static bool CreateReportData(string _reportName, DateTime _sDate, DateTime _eDate, string _dwdm)
        {
            int _ret = 0;

            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                try
                {
                    OracleCommand _cmd = new OracleCommand();
                    _cmd.CommandText = "zhtj_zdybb.bb";
                    _cmd.CommandType = CommandType.StoredProcedure;
                    _cmd.Parameters.Add("strtjdw", _dwdm);
                    _cmd.Parameters.Add("dtbegin_p", _sDate);
                    _cmd.Parameters.Add("dtend_p", _eDate);
                    _cmd.Parameters.Add("strbbmc", _reportName);
                    OracleParameter _p1 = _cmd.Parameters.Add("recret", OracleDbType.Decimal);
                    _p1.Direction   = ParameterDirection.Output;
                    _cmd.Connection = cn;
                    _cmd.ExecuteNonQuery();
                    _ret = int.Parse(_p1.Value.ToString());
                    cn.Close();
                    return(_ret == 0);
                }
                catch (Exception e)
                {
                    string _emsg = string.Format("生成统计报表(生成报表统计数据)时发生错误!reportName={0} _dwdm={1} DATE={2} - {3} ", _reportName, _dwdm, _sDate, _eDate);
                    _emsg += string.Format(" \n 错误信息:{0}", e.Message);
                    OralceLogWriter.WriteSystemLog(_emsg, "ERROR");
                    return(false);
                }
            }
        }
Exemplo n.º 12
0
        /// <summary>
        /// 取统计报表特殊行/特殊列结果数据
        /// </summary>
        /// <param name="_reportName"></param>
        /// <param name="_sDate"></param>
        /// <param name="_eDate"></param>
        /// <param name="_dwdm"></param>
        /// <param name="_cellData"></param>
        /// <returns></returns>
        private static bool GetReportSpecialData(string _reportName, DateTime _sDate, DateTime _eDate, string _dwdm, out DataTable _dt)
        {
            _dt = new DataTable();
            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                try
                {
                    OracleCommand _cmd = new OracleCommand();
                    _cmd.Connection  = cn;
                    _cmd.CommandText = "ZHTJ_ZDYBB.GetBB_DYG";
                    _cmd.CommandType = CommandType.StoredProcedure;
                    _cmd.Parameters.Add("strtjdw", _dwdm);
                    _cmd.Parameters.Add("dtbegin_p", _sDate);
                    _cmd.Parameters.Add("dtend_p", _eDate);
                    _cmd.Parameters.Add("strbbmc", _reportName);
                    _cmd.Parameters.Add("recret", OracleDbType.RefCursor, DBNull.Value, ParameterDirection.Output);

                    OracleDataAdapter _adapter = new OracleDataAdapter(_cmd);
                    _adapter.Fill(_dt);
                    cn.Close();
                    return(true);
                }
                catch (Exception e)
                {
                    string _emsg = string.Format("生成统计报表(取报表统计结果特殊行、列数据)时发生错误!reportName={0} _dwdm={1} DATE={2} - {3} ", _reportName, _dwdm, _sDate, _eDate);
                    _emsg += string.Format(" \n 错误信息:{0}", e.Message);
                    OralceLogWriter.WriteSystemLog(_emsg, "ERROR");
                    return(false);
                }
            }
        }
Exemplo n.º 13
0
        /// <summary>
        /// 取报表明细数据
        /// </summary>
        /// <param name="_reportName"></param>
        /// <param name="_sDate"></param>
        /// <param name="_eDate"></param>
        /// <param name="_dwdm"></param>
        /// <param name="_mxData"></param>
        /// <returns></returns>
        private static bool GetReportMXData(string _reportName, DateTime _sDate, DateTime _eDate, string _dwdm, out DataTable _dt)
        {
            _dt = new DataTable();
            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                try
                {
                    OracleCommand _cmd = new OracleCommand();
                    _cmd.Connection  = cn;
                    _cmd.CommandText = "select hx,lx from TJ_ZDYBBJLB_MX where BBMC=:BBMC AND TJDW=:TJDW AND KSRQ=:KSRQ and JZRQ=:JZRQ and MX is not null";
                    _cmd.CommandType = CommandType.Text;
                    _cmd.Parameters.Add(":BBMC", _reportName);
                    _cmd.Parameters.Add(":TJDW", _dwdm);
                    _cmd.Parameters.Add(":KSRQ", _sDate);
                    _cmd.Parameters.Add(":JZRQ", _eDate);

                    OracleDataAdapter _adapter = new OracleDataAdapter(_cmd);
                    _adapter.Fill(_dt);
                    cn.Close();
                    return(true);
                }
                catch (Exception e)
                {
                    string _emsg = string.Format("生成统计报表(取报表明细数据)时发生错误!reportName={0} _dwdm={1} DATE={2} - {3} ", _reportName, _dwdm, _sDate, _eDate);
                    _emsg += string.Format(" \n 错误信息:{0}", e.Message);
                    OralceLogWriter.WriteSystemLog(_emsg, "ERROR");
                    return(false);
                }
            }
        }
Exemplo n.º 14
0
        public DataTable GetReportGuideLineDetailData(MD_ReportGuideLineDefine ReportGuideLineDefine, DateTime StartDate, DateTime EndDate, string DWDM)
        {
            DataTable _ret = new DataTable();

            _ret.TableName = "RESULT";
            string _zbsf = ReportGuideLineDefine.DetialMethod.Trim();

            try
            {
                using (OracleConnection cn = OracleHelper.OpenConnection())
                {
                    _zbsf = _zbsf.Replace("dtBegin", string.Format("to_date('{0}01','YYYYMMDD')", StartDate.ToString("yyyMM")));
                    _zbsf = _zbsf.Replace("dtEnd", string.Format("to_date('{0}235959','YYYYMMDDhh24miss')", EndDate.ToString("yyyMMdd")));
                    _zbsf = _zbsf.Replace("strTJDW", string.Format("'{0}'", DWDM));

                    _ret = OracleHelper.FillDataTable(cn, CommandType.Text, _zbsf);

                    cn.Close();
                }
                return(_ret);
            }
            catch (Exception e)
            {
                string _errmsg = string.Format("执行报表指标{2}[{3}]的详细记录查询出错,错误信息为:{0}!\n查询语句为:{1}\n",
                                               e.Message, _zbsf, ReportGuideLineDefine.DisplayName, ReportGuideLineDefine.ID);
                OralceLogWriter.WriteSystemLog(_errmsg, "ERROR");
                return(_ret);
            }
        }
Exemplo n.º 15
0
        public void WriteExportLog(int _exportRowCount, string ExportDataMsg)
        {
            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                try
                {
                    string _ipaddr   = WCFClientInfo.IPAddr;
                    string _hostName = _ipaddr;

                    if (ExportDataMsg == null || ExportDataMsg.Trim() == "")
                    {
                        OralceLogWriter.WriteUserLog(decimal.Parse(SinoUserCtx.CurUser.UserID), "导出数据", string.Format("导了数据成功! 导出记录数:{0}", _exportRowCount),
                                                     1, _ipaddr, _hostName, ConfigFile.SystemID);
                    }
                    else
                    {
                        OralceLogWriter.WriteUserLog(decimal.Parse(SinoUserCtx.CurUser.UserID), "导出数据", string.Format("导了数据成功! 导出记录数:{0}  导出数据说明:{1}", _exportRowCount, ExportDataMsg),
                                                     1, _ipaddr, _hostName, ConfigFile.SystemID);
                    }
                }
                catch (Exception ex)
                {
                    OralceLogWriter.WriteSystemLog(string.Format("写入导出日志失败!导出内容:{0} 导出行数:{1} 错误信息:{2}", ExportDataMsg, _exportRowCount, ex.Message), "ERROR");
                }
            }
        }
Exemplo n.º 16
0
        /// <summary>
        /// 取报表定义数据
        /// </summary>
        /// <param name="_reportName"></param>
        /// <param name="_sDate"></param>
        /// <param name="_eDate"></param>
        /// <param name="_dwdm"></param>
        /// <param name="_hmcData"></param>
        /// <returns></returns>
        private static bool GetReportDefine(string _reportName, DateTime _sDate, DateTime _eDate, string _dwdm, out DataSet _ds)
        {
            _ds = new DataSet();
            try
            {
                using (OracleConnection cn = OracleHelper.OpenConnection())
                {
                    //取表定义
                    DataTable     _dt  = new DataTable("REPORT_DEFINE");
                    OracleCommand _cmd = new OracleCommand();
                    _cmd.Connection  = cn;
                    _cmd.CommandText = "select * from TJ_ZDYBBMCB a where a.BBMC =:BBMC";
                    _cmd.CommandType = CommandType.Text;
                    _cmd.Parameters.Add(":BBMC", _reportName);
                    OracleDataAdapter _adapter = new OracleDataAdapter(_cmd);
                    _adapter.Fill(_dt);
                    _ds.Tables.Add(_dt);

                    //取列定义
                    DataTable _coldt = new DataTable("COL_DEFINE");
                    _cmd             = new OracleCommand();
                    _cmd.Connection  = cn;
                    _cmd.CommandText = "select * from TJ_ZDYBBDYB_DTLJL a where a.bbmc =:BBMC and TJDW = :TJDW and KSRQ = :KSRQ and JZRQ = :JZRQ order by LX";
                    _cmd.CommandType = CommandType.Text;
                    _cmd.Parameters.Add(":BBMC", _reportName);
                    _cmd.Parameters.Add(":TJDW", _dwdm);
                    _cmd.Parameters.Add(":KSRQ", _sDate);
                    _cmd.Parameters.Add(":JZRQ", _eDate);

                    _adapter = new OracleDataAdapter(_cmd);
                    _adapter.Fill(_coldt);
                    _ds.Tables.Add(_coldt);

                    //取行定义
                    DataTable _rowdt = new DataTable("ROW_DEFINE");
                    _cmd             = new OracleCommand();
                    _cmd.Connection  = cn;
                    _cmd.CommandText = "select * from TJ_ZDYBBDYB_DTHJL a where a.bbmc =:BBMC and TJDW = :TJDW and KSRQ = :KSRQ and JZRQ = :JZRQ order by HX";
                    _cmd.CommandType = CommandType.Text;
                    _cmd.Parameters.Add(":BBMC", _reportName);
                    _cmd.Parameters.Add(":TJDW", _dwdm);
                    _cmd.Parameters.Add(":KSRQ", _sDate);
                    _cmd.Parameters.Add(":JZRQ", _eDate);

                    _adapter = new OracleDataAdapter(_cmd);
                    _adapter.Fill(_rowdt);
                    _ds.Tables.Add(_rowdt);
                    cn.Close();
                }
                return(true);
            }
            catch (Exception e)
            {
                string _emsg = string.Format("生成统计报表(取报表定义数据)时发生错误!reportName={0} _dwdm={1} DATE={2} - {3} ", _reportName, _dwdm, _sDate, _eDate);
                _emsg += string.Format(" \n 错误信息:{0}", e.Message);
                OralceLogWriter.WriteSystemLog(_emsg, "ERROR");
                return(false);
            }
        }
Exemplo n.º 17
0
        private byte[] GetRsReport_OLD(MD_ReportItem _reportItem, string Format)
        {
            ReportingService rs = new ReportingService();

            rs.Credentials = new System.Net.NetworkCredential(RsConfig.Name, RsConfig.Pass);
            //rs.Credentials =  new System.Net.NetworkCredential(Config.Rs_UserName, Config.Rs_UserPass);
            // Assign the URL of the Web service
            rs.Url = RsConfig.RsURL;

            string ReportPath = "/海关总署缉私局/" + _reportItem.ReportName.ReportName;
            // Prepare Render arguments
            string historyID  = null;
            string deviceInfo = null;

            ParameterValue[] param = new ParameterValue[3];
            param[0]       = new ParameterValue();
            param[0].Name  = "Report_Parameter_Year";
            param[0].Value = _reportItem.StartDate.Year.ToString();
            param[1]       = new ParameterValue();
            param[1].Name  = "Report_Parameter_month";
            param[1].Value = _reportItem.StartDate.Month.ToString("D2");
            param[2]       = new ParameterValue();
            param[2].Name  = "Report_Parameter_Dw";
            param[2].Value = _reportItem.ReportDWID;

            string showHide = null;

            DataSourceCredentials[] credentials = null;
            Byte[] results;
            string encoding;
            string mimeType;

            Warning[]        warnings = null;
            ParameterValue[] reportHistoryParameters = null;
            string[]         streamIDs = null;
            //Exectute the report and save it into a file.
            try
            {
                results = rs.Render(ReportPath, Format, historyID, deviceInfo, param,
                                    credentials, showHide, out encoding, out mimeType,
                                    out reportHistoryParameters, out warnings, out streamIDs);
                return(results);
            }
            catch (Exception e)
            {
                Exception e1 = e;


                string _eStr = string.Format(" 系统在生成报表时发出错误!\n Report Name:{0} \n Report Date:{1} \n Report Dw:{2} \n Report Error:{3}",
                                             _reportItem.ReportName, _reportItem.StartDate.Year.ToString() + _reportItem.StartDate.Month.ToString("D2"),
                                             string.Format("{0}[{1}]", _reportItem.ReportDWID, _reportItem.ReportDWName), e.Message);
                // Write an informational entry to the event log.
                OralceLogWriter.WriteSystemLog(_eStr, "ERROR");
                return(null);
            }
        }
Exemplo n.º 18
0
        public static bool WriteErrorResultSetRunFlag(string _Rwid, DateTime _startTime, DateTime _nextTime, string ErrorMsg, int flag)
        {
            //清除执行状态,并写入执行错误结果,设置下次执行时间
            OracleCommand cmd;
            string        _newmsg = (ErrorMsg.Length > 2000) ? ErrorMsg.Substring(0, 2000) : ErrorMsg;

            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                OracleTransaction _txn = cn.BeginTransaction();
                try
                {
                    cmd             = new OracleCommand();
                    cmd.Connection  = cn;
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText = "Update GZRW SET NEXTTIME=:NEXTTIME,LASTTIME =:LASTTIME,RUNFLAG=9,RWZT=:FLAG,RUNRESULT=:MSG  where RWID=:RWID";
                    cmd.Parameters.Add(new OracleParameter(":NEXTTIME", _nextTime));
                    cmd.Parameters.Add(new OracleParameter(":LASTTIME", _startTime));
                    cmd.Parameters.Add(new OracleParameter(":FLAG", Convert.ToDecimal(flag)));
                    cmd.Parameters.Add(new OracleParameter(":MSG", "任务执行失败!"));
                    cmd.Parameters.Add(new OracleParameter(":RWID", decimal.Parse(_Rwid)));
                    cmd.ExecuteScalar();
                }
                catch (Exception e)
                {
                    string _log = string.Format("写入任务{1}结果时出现错误:{0}", e.Message, _Rwid);
                    OralceLogWriter.WriteSystemLog(_log, "ERROR");
                    _txn.Rollback();
                    return(false);
                }

                try
                {
                    cmd             = new OracleCommand();
                    cmd.Connection  = cn;
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText = "insert into gzrw_rz (rzid,rwid,rwmc,runtime,runflag,runresult) values (SEQ_YW.NEXTVAL,:RWID,'',sysdate,9,:RUNRESULT)";
                    cmd.Parameters.Add(new OracleParameter(":RWID", decimal.Parse(_Rwid)));
                    cmd.Parameters.Add(new OracleParameter(":RUNRESULT", _newmsg));
                    cmd.ExecuteScalar();
                }
                catch (Exception e)
                {
                    string _log = string.Format("写入任务{1}日志表时出现错误:{0}", e.Message, _Rwid);
                    OralceLogWriter.WriteSystemLog(_log, "ERROR");
                    _txn.Rollback();
                    return(false);
                }

                _txn.Commit();
                cn.Close();
            }
            return(true);
        }
Exemplo n.º 19
0
        /// <summary>
        /// 将所有任务状态置为空闲
        /// </summary>
        public static void InitAllTaskState()
        {
            string _rwql = string.Format("update GZRW set RWZT = 0 where RWZT =1");

            try
            {
                OracleHelper.ExecuteNonQuery(OracleHelper.ConnectionStringProfile, CommandType.Text, _rwql);
            }
            catch (Exception ex)
            {
                string _log = string.Format("清除未执行完毕任务时出错:{0}", ex.Message);
                OralceLogWriter.WriteSystemLog(_log, "ERROR");
            }
        }
Exemplo n.º 20
0
        public static bool WriteResultSetRunFlag(string _Rwid, DateTime _startTime, DateTime _nextTime, int flag)
        {
            //清除执行状态,并写入执行结果,设置下次执行时间
            OracleCommand cmd;

            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                try
                {
                    cmd             = new OracleCommand();
                    cmd.Connection  = cn;
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText = "Update GZRW SET NEXTTIME=:NEXTTIME,LASTTIME =:LASTTIME,RUNFLAG=0,RWZT=:RWZT,RUNRESULT=:MSG  where RWID=:RWID";
                    cmd.Parameters.Add(new OracleParameter(":NEXTTIME", _nextTime));
                    cmd.Parameters.Add(new OracleParameter(":LASTTIME", _startTime));
                    cmd.Parameters.Add(new OracleParameter(":RWZT", Convert.ToDecimal(flag)));
                    cmd.Parameters.Add(new OracleParameter(":MSG", "任务正常执行完毕!"));
                    cmd.Parameters.Add(new OracleParameter(":RWID", decimal.Parse(_Rwid)));
                    cmd.ExecuteScalar();
                }
                catch (Exception e)
                {
                    string _log = string.Format("写入任务{1}结果时出现错误:{0}", e.Message, _Rwid);
                    OralceLogWriter.WriteSystemLog(_log, "ERROR");
                    return(false);
                }

                try
                {
                    cmd             = new OracleCommand();
                    cmd.Connection  = cn;
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText = "insert into gzrw_rz (rzid,rwid,rwmc,runtime,runflag,runresult) values (SEQ_YW.NEXTVAL,:RWID,'',sysdate,0,:RUNRESULT)";
                    cmd.Parameters.Add(new OracleParameter(":RWID", decimal.Parse(_Rwid)));
                    cmd.Parameters.Add(new OracleParameter(":RUNRESULT", "任务正常执行完毕!"));
                    cmd.ExecuteScalar();
                }
                catch (Exception e)
                {
                    string _log = string.Format("写入任务{1}日志表时出现错误:{0}", e.Message, _Rwid);
                    OralceLogWriter.WriteSystemLog(_log, "ERROR");
                    return(false);
                }

                cn.Close();
            }
            return(true);
        }
Exemplo n.º 21
0
        public void WriteClientUserLog(string Message, string LogType)
        {
            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                try
                {
                    string _ipaddr = WCFClientInfo.IPAddr;

                    OralceLogWriter.WriteUserLog(decimal.Parse(SinoUserCtx.CurUser.UserID), "客户端日志", Message, 1, _ipaddr, _ipaddr, ConfigFile.SystemID);
                }
                catch (Exception ex)
                {
                    OralceLogWriter.WriteSystemLog(string.Format("写入客户端日志失败!日志内容:{0} 类型:{1} 错误信息:{2}", Message, LogType, ex.Message), "ERROR");
                }
            }
        }
Exemplo n.º 22
0
        public bool WriteLog(string _log, System.Diagnostics.EventLogEntryType _logType)
        {
            string _typeStr = "INFO";

            switch (_logType)
            {
            case System.Diagnostics.EventLogEntryType.Error:
                _typeStr = "ERROR";
                break;

            default:
                _typeStr = "INFO";
                break;
            }
            OralceLogWriter.WriteSystemLog(_log, _typeStr);
            return(true);
        }
Exemplo n.º 23
0
        /// <summary>
        /// 写任务开始状态
        /// </summary>
        /// <param name="_Rwid"></param>
        /// <returns></returns>
        public static bool WriteRWState(string _Rwid)
        {
            string _cmd = "Update GZRW SET RWZT = 1 where RWID=:RWID";

            OracleParameter[] _param = { new OracleParameter(":RWID", OracleDbType.Decimal) };
            _param[0].Value = decimal.Parse(_Rwid);
            try
            {
                OracleHelper.ExecuteNonQuery(OracleHelper.ConnectionStringProfile, CommandType.Text, _cmd, _param);
            }
            catch (Exception e)
            {
                string _log = string.Format("设置任务{1}状态为正在执行时,出现错误:{0}", e.Message, _Rwid);
                OralceLogWriter.WriteSystemLog(_log, "ERROR");
                return(false);
            }
            return(true);
        }
Exemplo n.º 24
0
        /// <summary>
        /// 通过用户名称和口令取用户ID
        /// </summary>
        /// <param name="_name">用户名称</param>
        /// <param name="_pass">用户口令</param>
        /// <returns></returns>
        public static string GetYHIDByName(string _name, string _pass)
        {
            string _select = string.Format("SELECT a.YHID FROM qx2_yhxx a where a.yhm = '{0}' or a.hggh ='{1}'", _name,
                                           ((_name.Length < 7) ? _name.PadRight(7, '0') : _name));
            DataTable _dt = OracleHelper.Get_Data(_select, "TABLE");

            if (_dt == null || _dt.Rows.Count == 0)
            {
                OralceLogWriter.WriteSystemLog(string.Format("取未注册用户[{0}]的YHID信息", _name), "INFO");
                return("-1");
            }

            if (_dt.Rows.Count != 1)
            {
                throw new Exception(string.Format("系统中存在{1}个相同的用户名:{0},请与管理员联系!", _name, _dt.Rows.Count));
            }
            return(_dt.Rows[0]["YHID"].ToString());
        }
Exemplo n.º 25
0
 private static string GetUserGuidByJS(string _name)
 {
     using (OracleConnection cn = OracleHelper.OpenConnection())
     {
         try
         {
             OracleCommand _cmd = new OracleCommand(SQL_GetUserGuidByJS, cn);
             _cmd.Parameters.Add(":YHM", _name);
             string ret = _cmd.ExecuteScalar().ToString();
             return(ret);
         }
         catch (Exception ex)
         {
             OralceLogWriter.WriteSystemLog(string.Format("通过登录名称从数据库中取用户GUID失败!{0} {1}", ex.Message, _name), "ERROR");
             throw ex;
         }
     }
 }
Exemplo n.º 26
0
        public bool SaveOrgExtList(List <OrgExtInfo> BeSavedDataList, List <OrgExtFieldDefine> PropertieDefines)
        {
            StringBuilder _sb = new StringBuilder();

            _sb.Append(" update QX2_JGFJXX set JGXSMC=:JGXSMC,ISDISPLAY=:ISDISPLAY,DISPLAYORDER=:DISPLAYORDER");
            foreach (OrgExtFieldDefine _field in PropertieDefines)
            {
                _sb.Append(string.Format(",{0}=:{0}", _field.FieldName));
            }
            _sb.Append(" where ZZJGID=:ZZJGID ");

            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                OracleTransaction _txn = cn.BeginTransaction();
                foreach (OrgExtInfo _item in BeSavedDataList)
                {
                    try
                    {
                        List <OracleParameter> _plist = new List <OracleParameter>();
                        _plist.Add(new OracleParameter(":JGXSMC", _item.GetValue("JGXSMC")));
                        _plist.Add(new OracleParameter(":ISDISPLAY", _item.GetValue("ISDISPLAY")));
                        _plist.Add(new OracleParameter(":DISPLAYORDER", _item.GetValue("DISPLAYORDER")));
                        foreach (OrgExtFieldDefine _field in PropertieDefines)
                        {
                            _plist.Add(new OracleParameter(string.Format(":{0}", _field.FieldName), _item.GetValue(_field.FieldName)));
                        }
                        _plist.Add(new OracleParameter(":ZZJGID", Convert.ToDecimal(_item.GetValue("ZZJGID"))));
                        OracleParameter[] _ps = _plist.ToArray();
                        OracleHelper.ExecuteNonQuery(cn, CommandType.Text, _sb.ToString(), _ps);
                    }
                    catch (Exception e)
                    {
                        string _errmsg = string.Format("写入{1}的组织机构扩展信息时出错,错误信息为:{0}!",
                                                       e.Message, _item.GetValue("ZZJGID"));
                        OralceLogWriter.WriteSystemLog(_errmsg, "ERROR");
                        _txn.Rollback();
                        return(false);
                    }
                }
                _txn.Commit();
                cn.Close();
            }
            return(true);
        }
Exemplo n.º 27
0
        /// <summary>
        /// 取所有的达到执行时间的任务列表
        /// </summary>
        /// <returns></returns>
        public static DataTable GetTaskList()
        {
            DataTable     detailData = null;
            StringBuilder _sb        = new StringBuilder();

            _sb.Append("select RWID,RZLB,RWML from GZRW where RWZT = 0 and NEXTTIME<sysdate");

            try
            {
                detailData           = OracleHelper.FillDataTable(OracleHelper.ConnectionStringProfile, CommandType.Text, _sb.ToString());
                detailData.TableName = "TASKLIST";
                return(detailData);
            }
            catch (Exception ex)
            {
                string _log = string.Format("取所有的达到执行时间的任务列表出错:{0}", ex.Message);
                OralceLogWriter.WriteSystemLog(_log, "ERROR");
                return(null);
            }
        }
Exemplo n.º 28
0
        /// <summary>
        /// 任务管理器
        /// </summary>
        /// <param name="application"></param>
        /// <param name="_rwid">任务ID</param>
        /// <param name="_lb">任务类别</param>
        /// <param name="_ml">任务命令</param>
        public static void RunTask(string _rwid, string _lb, string _ml)
        {
            string      _pluginName = _lb.Trim();
            ITaskPlugin _plugin     = TaskLib.GetService(_pluginName);

            if (_plugin == null)
            {
                throw new Exception(string.Format("任务{0}接口未注册!", _pluginName));
            }
            try
            {
                Task_Base _task = _plugin.GetTaskObject(_rwid, _ml) as Task_Base;
                Thread    t     = new Thread(new ThreadStart(_task.ThreadProc));
                t.Start();
            }
            catch (Exception ex)
            {
                OralceLogWriter.WriteSystemLog(ex.Message, "ERROR");
            }
        }
Exemplo n.º 29
0
        private void CloseReportTemplate()
        {
            int _ret = -1;

            try {
                if (m_oBook != null)
                {
                    m_oBook.Close(true, m_sReportTemplate, m_oMissing);
                }

                if (m_oExcelApp != null)
                {
                    OralceLogWriter.WriteSystemLog(string.Format("执行关闭m_oExcelApp!ret = {0}", _ret), "INFO");
                }
                m_oExcelApp = null;
                m_oBooks    = null;
                m_oBook     = null;
                oSheets     = null;
                m_oSheet    = null;
                oCells      = null;

                OralceLogWriter.WriteSystemLog("完成关闭EXCEL进程!", "INFO");
                GC.Collect();
                isBusy = false;
                //				GC.WaitForPendingFinalizers();
                //				GC.Collect();
                //				GC.WaitForPendingFinalizers();
            }
            catch (Exception e) {
                OralceLogWriter.WriteSystemLog(string.Format("关闭EXCEL进程时出错!{0}", e.Message), "ERROR");
            }
            finally {
                GC.Collect();
                //				GC.WaitForPendingFinalizers();
                //				GC.Collect();
                //				GC.WaitForPendingFinalizers();
            }
        }
Exemplo n.º 30
0
        public List <MD_ReportGuideLineItem> GetReportGuideLines(MD_ReportName _reportName)
        {
            List <MD_ReportGuideLineItem> _ret = new List <MD_ReportGuideLineItem>();

            using (OracleConnection cn = OracleHelper.OpenConnection())
            {
                try
                {
                    OracleCommand _cmd = new OracleCommand(SQL_GetReportGuideLines, cn);
                    _cmd.Parameters.Add(":ZTMC", _reportName.ReportName);
                    OracleDataReader _dr = _cmd.ExecuteReader();
                    while (_dr.Read())
                    {
                        MD_ReportGuideLineItem _item = new MD_ReportGuideLineItem(
                            "1",
                            "",
                            _dr.IsDBNull(2) ? "" : _dr.GetString(2),
                            _dr.IsDBNull(0) ? "" : _dr.GetString(0),
                            Enum_ReportGuideLineItemType.Report
                            );

                        _item.Children = GetChildGuideLine(_item, cn);
                        _ret.Add(_item);
                    }
                    _dr.Close();
                    cn.Close();
                }
                catch (Exception ex)
                {
                    string _err = string.Format("取报表指标项时出错,错误信息:{0}   SQL语句:{1}", ex.Message, SQL_GetReportGuideLines);
                    OralceLogWriter.WriteSystemLog(_err, "ERROR");
                    throw ex;
                }
            }

            return(_ret);
        }